mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-24 12:23:32 +01:00
connection_new() can't ever fail
svn:r497
This commit is contained in:
parent
9899e09b3b
commit
deac704399
@ -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);
|
||||
|
@ -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)) {
|
||||
|
@ -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);
|
||||
|
@ -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);
|
||||
|
@ -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]);
|
||||
|
||||
|
@ -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;
|
||||
|
@ -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]);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user