Преглед на файлове

connection_new() can't ever fail

svn:r497
Roger Dingledine преди 20 години
родител
ревизия
deac704399
променени са 7 файла, в които са добавени 3 реда и са изтрити 30 реда
  1. 1 1
      src/or/buffers.c
  2. 2 11
      src/or/connection.c
  3. 0 4
      src/or/connection_edge.c
  4. 0 4
      src/or/connection_or.c
  5. 0 4
      src/or/cpuworker.c
  6. 0 2
      src/or/directory.c
  7. 0 4
      src/or/dns.c

+ 1 - 1
src/or/buffers.c

@@ -44,7 +44,7 @@ int find_on_inbuf(char *string, int string_len, buf_t *buf) {
 
 /* Create and return a new buf of size 'size'
  */
-buf_t *buf_new_with_capacity(size_t size) {
+static buf_t *buf_new_with_capacity(size_t size) {
   buf_t *buf;
   buf = (buf_t*)tor_malloc(sizeof(buf_t));
   buf->buf = (char *)tor_malloc(size);

+ 2 - 11
src/or/connection.c

@@ -80,9 +80,8 @@ connection_t *connection_new(int type) {
   memset(conn,0,sizeof(connection_t)); /* zero it out to start */
 
   conn->type = type;
-  if(!(conn->inbuf = buf_new()) ||
-     !(conn->outbuf = buf_new())) 
-    return NULL;
+  conn->inbuf = buf_new();
+  conn->outbuf = buf_new();
 
   conn->receiver_bucket = 50000; /* should be enough to do the handshake */
   conn->bandwidth = conn->receiver_bucket / 10; /* give it a default */
@@ -149,10 +148,6 @@ int connection_create_listener(struct sockaddr_in *bindaddr, int type) {
   set_socket_nonblocking(s);
 
   conn = connection_new(type);
-  if(!conn) {
-    log_fn(LOG_WARNING,"connection_new failed. Giving up.");
-    return -1;
-  }
   conn->s = s;
   conn->receiver_bucket = -1; /* non-cell connections don't do receiver buckets */
   conn->bandwidth = -1;
@@ -200,10 +195,6 @@ int connection_handle_listener_read(connection_t *conn, int new_type) {
   set_socket_nonblocking(news);
 
   newconn = connection_new(new_type);
-  if(!newconn) {
-    log_fn(LOG_WARNING,"connection_new failed. Giving up.");
-    return 0;
-  }
   newconn->s = news;
 
   if(!connection_speaks_cells(newconn)) {

+ 0 - 4
src/or/connection_edge.c

@@ -548,10 +548,6 @@ static int connection_exit_begin_conn(cell_t *cell, circuit_t *circ) {
 
   log_fn(LOG_DEBUG,"Creating new exit connection.");
   n_stream = connection_new(CONN_TYPE_EXIT);
-  if(!n_stream) {
-    log_fn(LOG_WARNING,"connection_new failed. Dropping.");
-    return 0;
-  }
 
   memcpy(n_stream->stream_id, cell->payload + RELAY_HEADER_SIZE, STREAM_ID_SIZE);
   n_stream->address = strdup(cell->payload + RELAY_HEADER_SIZE + STREAM_ID_SIZE);

+ 0 - 4
src/or/connection_or.c

@@ -104,10 +104,6 @@ connection_t *connection_or_connect(routerinfo_t *router) {
     return conn;
 
   conn = connection_new(CONN_TYPE_OR);
-  if(!conn) {
-    log_fn(LOG_WARNING,"connection_new failed; skipping.");
-    return NULL;
-  }
 
   /* set up conn so it's got all the data we need to remember */
   connection_or_init_conn_from_router(conn, router);

+ 0 - 4
src/or/cpuworker.c

@@ -179,10 +179,6 @@ static int spawn_cpuworker(void) {
   close(fd[1]); /* we don't need the worker's side of the pipe */
 
   conn = connection_new(CONN_TYPE_CPUWORKER);
-  if(!conn) {
-    close(fd[0]);
-    return -1;
-  }
 
   set_socket_nonblocking(fd[0]);
 

+ 0 - 2
src/or/directory.c

@@ -43,8 +43,6 @@ void directory_initiate_command(routerinfo_t *router, int command) {
     log_fn(LOG_DEBUG,"initiating directory upload");
 
   conn = connection_new(CONN_TYPE_DIR);
-  if(!conn)
-    return;
 
   /* set up conn so it's got all the data we need to remember */
   conn->addr = router->addr;

+ 0 - 4
src/or/dns.c

@@ -382,10 +382,6 @@ static int spawn_dnsworker(void) {
   close(fd[1]); /* we don't need the worker's side of the pipe */
 
   conn = connection_new(CONN_TYPE_DNSWORKER);
-  if(!conn) {
-    close(fd[0]);
-    return -1;
-  }
 
   set_socket_nonblocking(fd[0]);