Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
David Goulet
Tor
Commits
2a74101f
Commit
2a74101f
authored
Jul 22, 2010
by
Sebastian Hahn
Browse files
Create connection.h
parent
c4f8f131
Changes
23
Hide whitespace changes
Inline
Side-by-side
src/or/circuitbuild.c
View file @
2a74101f
...
...
@@ -16,6 +16,7 @@
#include
"circuitlist.h"
#include
"circuituse.h"
#include
"config.h"
#include
"connection.h"
#include
"router.h"
#include
"routerlist.h"
#include
"crypto.h"
...
...
src/or/circuitlist.c
View file @
2a74101f
...
...
@@ -13,6 +13,7 @@
#include
"circuitbuild.h"
#include
"circuitlist.h"
#include
"circuituse.h"
#include
"connection.h"
#include
"config.h"
#include
"rendclient.h"
#include
"rendcommon.h"
...
...
src/or/circuituse.c
View file @
2a74101f
...
...
@@ -14,6 +14,7 @@
#include
"circuitlist.h"
#include
"circuituse.h"
#include
"config.h"
#include
"connection.h"
#include
"rendclient.h"
#include
"rendcommon.h"
#include
"rendservice.h"
...
...
src/or/command.c
View file @
2a74101f
...
...
@@ -19,6 +19,7 @@
#include
"circuitbuild.h"
#include
"circuitlist.h"
#include
"command.h"
#include
"connection.h"
#include
"config.h"
#include
"router.h"
#include
"routerlist.h"
...
...
src/or/config.c
View file @
2a74101f
...
...
@@ -15,6 +15,7 @@
#include
"circuitbuild.h"
#include
"circuitlist.h"
#include
"config.h"
#include
"connection.h"
#include
"geoip.h"
#include
"rendclient.h"
#include
"rendservice.h"
...
...
src/or/connection.c
View file @
2a74101f
...
...
@@ -16,6 +16,7 @@
#include
"circuitlist.h"
#include
"circuituse.h"
#include
"config.h"
#include
"connection.h"
#include
"dnsserv.h"
#include
"geoip.h"
#include
"rendclient.h"
...
...
src/or/connection.h
0 → 100644
View file @
2a74101f
/* Copyright (c) 2001 Matej Pfajfar.
* Copyright (c) 2001-2004, Roger Dingledine.
* Copyright (c) 2004-2006, Roger Dingledine, Nick Mathewson.
* Copyright (c) 2007-2010, The Tor Project, Inc. */
/* See LICENSE for licensing information */
/**
* \file connection.h
* \brief Header file for connection.c.
**/
#ifndef _TOR_CONNECTION_H
#define _TOR_CONNECTION_H
const
char
*
conn_type_to_string
(
int
type
);
const
char
*
conn_state_to_string
(
int
type
,
int
state
);
dir_connection_t
*
dir_connection_new
(
int
socket_family
);
or_connection_t
*
or_connection_new
(
int
socket_family
);
edge_connection_t
*
edge_connection_new
(
int
type
,
int
socket_family
);
control_connection_t
*
control_connection_new
(
int
socket_family
);
connection_t
*
connection_new
(
int
type
,
int
socket_family
);
void
connection_link_connections
(
connection_t
*
conn_a
,
connection_t
*
conn_b
);
void
connection_free
(
connection_t
*
conn
);
void
connection_free_all
(
void
);
void
connection_about_to_close_connection
(
connection_t
*
conn
);
void
connection_close_immediate
(
connection_t
*
conn
);
void
_connection_mark_for_close
(
connection_t
*
conn
,
int
line
,
const
char
*
file
);
#define connection_mark_for_close(c) \
_connection_mark_for_close((c), __LINE__, _SHORT_FILE_)
void
connection_expire_held_open
(
void
);
int
connection_connect
(
connection_t
*
conn
,
const
char
*
address
,
const
tor_addr_t
*
addr
,
uint16_t
port
,
int
*
socket_error
);
int
connection_proxy_connect
(
connection_t
*
conn
,
int
type
);
int
connection_read_proxy_handshake
(
connection_t
*
conn
);
int
retry_all_listeners
(
smartlist_t
*
replaced_conns
,
smartlist_t
*
new_conns
);
ssize_t
connection_bucket_write_limit
(
connection_t
*
conn
,
time_t
now
);
int
global_write_bucket_low
(
connection_t
*
conn
,
size_t
attempt
,
int
priority
);
void
connection_bucket_init
(
void
);
void
connection_bucket_refill
(
int
seconds_elapsed
,
time_t
now
);
int
connection_handle_read
(
connection_t
*
conn
);
int
connection_fetch_from_buf
(
char
*
string
,
size_t
len
,
connection_t
*
conn
);
int
connection_wants_to_flush
(
connection_t
*
conn
);
int
connection_outbuf_too_full
(
connection_t
*
conn
);
int
connection_handle_write
(
connection_t
*
conn
,
int
force
);
void
_connection_write_to_buf_impl
(
const
char
*
string
,
size_t
len
,
connection_t
*
conn
,
int
zlib
);
static
void
connection_write_to_buf
(
const
char
*
string
,
size_t
len
,
connection_t
*
conn
);
static
void
connection_write_to_buf_zlib
(
const
char
*
string
,
size_t
len
,
dir_connection_t
*
conn
,
int
done
);
static
INLINE
void
connection_write_to_buf
(
const
char
*
string
,
size_t
len
,
connection_t
*
conn
)
{
_connection_write_to_buf_impl
(
string
,
len
,
conn
,
0
);
}
static
INLINE
void
connection_write_to_buf_zlib
(
const
char
*
string
,
size_t
len
,
dir_connection_t
*
conn
,
int
done
)
{
_connection_write_to_buf_impl
(
string
,
len
,
TO_CONN
(
conn
),
done
?
-
1
:
1
);
}
connection_t
*
connection_get_by_global_id
(
uint64_t
id
);
connection_t
*
connection_get_by_type
(
int
type
);
connection_t
*
connection_get_by_type_purpose
(
int
type
,
int
purpose
);
connection_t
*
connection_get_by_type_addr_port_purpose
(
int
type
,
const
tor_addr_t
*
addr
,
uint16_t
port
,
int
purpose
);
connection_t
*
connection_get_by_type_state
(
int
type
,
int
state
);
connection_t
*
connection_get_by_type_state_rendquery
(
int
type
,
int
state
,
const
char
*
rendquery
);
#define connection_speaks_cells(conn) ((conn)->type == CONN_TYPE_OR)
int
connection_is_listener
(
connection_t
*
conn
);
int
connection_state_is_open
(
connection_t
*
conn
);
int
connection_state_is_connecting
(
connection_t
*
conn
);
char
*
alloc_http_authenticator
(
const
char
*
authenticator
);
void
assert_connection_ok
(
connection_t
*
conn
,
time_t
now
);
int
connection_or_nonopen_was_started_here
(
or_connection_t
*
conn
);
void
connection_dump_buffer_mem_stats
(
int
severity
);
void
remove_file_if_very_old
(
const
char
*
fname
,
time_t
now
);
#endif
src/or/connection_edge.c
View file @
2a74101f
...
...
@@ -14,6 +14,7 @@
#include
"circuitlist.h"
#include
"circuituse.h"
#include
"config.h"
#include
"connection.h"
#include
"dnsserv.h"
#include
"rendclient.h"
#include
"rendcommon.h"
...
...
src/or/connection_or.c
View file @
2a74101f
...
...
@@ -15,6 +15,7 @@
#include
"circuitbuild.h"
#include
"command.h"
#include
"config.h"
#include
"connection.h"
#include
"geoip.h"
#include
"router.h"
#include
"routerlist.h"
...
...
src/or/control.c
View file @
2a74101f
...
...
@@ -16,6 +16,7 @@
#include
"circuitlist.h"
#include
"circuituse.h"
#include
"config.h"
#include
"connection.h"
#include
"dnsserv.h"
#include
"geoip.h"
#include
"router.h"
...
...
src/or/cpuworker.c
View file @
2a74101f
...
...
@@ -17,6 +17,7 @@
#include
"circuitbuild.h"
#include
"circuitlist.h"
#include
"config.h"
#include
"connection.h"
#include
"router.h"
/** The maximum number of cpuworker processes we will keep around. */
...
...
src/or/directory.c
View file @
2a74101f
...
...
@@ -7,6 +7,7 @@
#include
"buffers.h"
#include
"circuitbuild.h"
#include
"config.h"
#include
"connection.h"
#include
"geoip.h"
#include
"rendclient.h"
#include
"rendcommon.h"
...
...
src/or/dirserv.c
View file @
2a74101f
...
...
@@ -7,6 +7,7 @@
#include
"or.h"
#include
"buffers.h"
#include
"config.h"
#include
"connection.h"
#include
"router.h"
#include
"routerlist.h"
...
...
src/or/dns.c
View file @
2a74101f
...
...
@@ -15,6 +15,7 @@
#include
"circuitlist.h"
#include
"circuituse.h"
#include
"config.h"
#include
"connection.h"
#include
"router.h"
#include
"ht.h"
#ifdef HAVE_EVENT2_DNS_H
...
...
src/or/dnsserv.c
View file @
2a74101f
...
...
@@ -11,6 +11,7 @@
#include
"or.h"
#include
"dnsserv.h"
#include
"config.h"
#include
"connection.h"
#ifdef HAVE_EVENT2_DNS_H
#include
<event2/dns.h>
#include
<event2/dns_compat.h>
...
...
src/or/hibernate.c
View file @
2a74101f
...
...
@@ -23,6 +23,7 @@ hibernating, phase 2:
#include
"or.h"
#include
"config.h"
#include
"connection.h"
#include
"router.h"
/** Possible values of hibernate_state */
...
...
src/or/main.c
View file @
2a74101f
...
...
@@ -18,6 +18,7 @@
#include
"circuituse.h"
#include
"command.h"
#include
"config.h"
#include
"connection.h"
#include
"dnsserv.h"
#include
"geoip.h"
#include
"rendclient.h"
...
...
src/or/networkstatus.c
View file @
2a74101f
...
...
@@ -13,6 +13,7 @@
#include
"or.h"
#include
"circuitbuild.h"
#include
"config.h"
#include
"connection.h"
#include
"router.h"
#include
"routerlist.h"
...
...
src/or/or.h
View file @
2a74101f
...
...
@@ -3066,92 +3066,6 @@ typedef enum setopt_err_t {
SETOPT_ERR_SETTING
=
-
4
,
}
setopt_err_t
;
/********************************* connection.c ***************************/
const
char
*
conn_type_to_string
(
int
type
);
const
char
*
conn_state_to_string
(
int
type
,
int
state
);
dir_connection_t
*
dir_connection_new
(
int
socket_family
);
or_connection_t
*
or_connection_new
(
int
socket_family
);
edge_connection_t
*
edge_connection_new
(
int
type
,
int
socket_family
);
control_connection_t
*
control_connection_new
(
int
socket_family
);
connection_t
*
connection_new
(
int
type
,
int
socket_family
);
void
connection_link_connections
(
connection_t
*
conn_a
,
connection_t
*
conn_b
);
void
connection_free
(
connection_t
*
conn
);
void
connection_free_all
(
void
);
void
connection_about_to_close_connection
(
connection_t
*
conn
);
void
connection_close_immediate
(
connection_t
*
conn
);
void
_connection_mark_for_close
(
connection_t
*
conn
,
int
line
,
const
char
*
file
);
#define connection_mark_for_close(c) \
_connection_mark_for_close((c), __LINE__, _SHORT_FILE_)
void
connection_expire_held_open
(
void
);
int
connection_connect
(
connection_t
*
conn
,
const
char
*
address
,
const
tor_addr_t
*
addr
,
uint16_t
port
,
int
*
socket_error
);
int
connection_proxy_connect
(
connection_t
*
conn
,
int
type
);
int
connection_read_proxy_handshake
(
connection_t
*
conn
);
int
retry_all_listeners
(
smartlist_t
*
replaced_conns
,
smartlist_t
*
new_conns
);
ssize_t
connection_bucket_write_limit
(
connection_t
*
conn
,
time_t
now
);
int
global_write_bucket_low
(
connection_t
*
conn
,
size_t
attempt
,
int
priority
);
void
connection_bucket_init
(
void
);
void
connection_bucket_refill
(
int
seconds_elapsed
,
time_t
now
);
int
connection_handle_read
(
connection_t
*
conn
);
int
connection_fetch_from_buf
(
char
*
string
,
size_t
len
,
connection_t
*
conn
);
int
connection_wants_to_flush
(
connection_t
*
conn
);
int
connection_outbuf_too_full
(
connection_t
*
conn
);
int
connection_handle_write
(
connection_t
*
conn
,
int
force
);
void
_connection_write_to_buf_impl
(
const
char
*
string
,
size_t
len
,
connection_t
*
conn
,
int
zlib
);
static
void
connection_write_to_buf
(
const
char
*
string
,
size_t
len
,
connection_t
*
conn
);
static
void
connection_write_to_buf_zlib
(
const
char
*
string
,
size_t
len
,
dir_connection_t
*
conn
,
int
done
);
static
INLINE
void
connection_write_to_buf
(
const
char
*
string
,
size_t
len
,
connection_t
*
conn
)
{
_connection_write_to_buf_impl
(
string
,
len
,
conn
,
0
);
}
static
INLINE
void
connection_write_to_buf_zlib
(
const
char
*
string
,
size_t
len
,
dir_connection_t
*
conn
,
int
done
)
{
_connection_write_to_buf_impl
(
string
,
len
,
TO_CONN
(
conn
),
done
?
-
1
:
1
);
}
connection_t
*
connection_get_by_global_id
(
uint64_t
id
);
connection_t
*
connection_get_by_type
(
int
type
);
connection_t
*
connection_get_by_type_purpose
(
int
type
,
int
purpose
);
connection_t
*
connection_get_by_type_addr_port_purpose
(
int
type
,
const
tor_addr_t
*
addr
,
uint16_t
port
,
int
purpose
);
connection_t
*
connection_get_by_type_state
(
int
type
,
int
state
);
connection_t
*
connection_get_by_type_state_rendquery
(
int
type
,
int
state
,
const
char
*
rendquery
);
#define connection_speaks_cells(conn) ((conn)->type == CONN_TYPE_OR)
int
connection_is_listener
(
connection_t
*
conn
);
int
connection_state_is_open
(
connection_t
*
conn
);
int
connection_state_is_connecting
(
connection_t
*
conn
);
char
*
alloc_http_authenticator
(
const
char
*
authenticator
);
void
assert_connection_ok
(
connection_t
*
conn
,
time_t
now
);
int
connection_or_nonopen_was_started_here
(
or_connection_t
*
conn
);
void
connection_dump_buffer_mem_stats
(
int
severity
);
void
remove_file_if_very_old
(
const
char
*
fname
,
time_t
now
);
/********************************* connection_edge.c *************************/
#define connection_mark_unattached_ap(conn, endreason) \
...
...
src/or/relay.c
View file @
2a74101f
...
...
@@ -16,6 +16,7 @@
#include
"circuitbuild.h"
#include
"circuitlist.h"
#include
"config.h"
#include
"connection.h"
#include
"geoip.h"
#include
"mempool.h"
#include
"rendcommon.h"
...
...
Prev
1
2
Next
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment