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
Mike Perry
Tor
Commits
413c7a19
Commit
413c7a19
authored
Sep 08, 2003
by
Roger Dingledine
Browse files
clean up config.c so it doesn't expose as much
svn:r430
parent
3fa170e1
Changes
2
Hide whitespace changes
Inline
Side-by-side
src/or/config.c
View file @
413c7a19
...
...
@@ -4,8 +4,32 @@
#include
"or.h"
/* enumeration of types which option values can take */
#define CONFIG_TYPE_STRING 0
#define CONFIG_TYPE_CHAR 1
#define CONFIG_TYPE_INT 2
#define CONFIG_TYPE_LONG 3
#define CONFIG_TYPE_DOUBLE 4
#define CONFIG_TYPE_BOOL 5
#define CONFIG_LINE_MAXLEN 1024
struct
config_line
{
char
*
key
;
char
*
value
;
struct
config_line
*
next
;
};
static
FILE
*
config_open
(
const
unsigned
char
*
filename
);
static
int
config_close
(
FILE
*
f
);
static
struct
config_line
*
config_get_commandlines
(
int
argc
,
char
**
argv
);
static
struct
config_line
*
config_get_lines
(
FILE
*
f
);
static
void
config_free_lines
(
struct
config_line
*
front
);
static
int
config_compare
(
struct
config_line
*
c
,
char
*
key
,
int
type
,
void
*
arg
);
static
void
config_assign
(
or_options_t
*
options
,
struct
config_line
*
list
);
/* open configuration file for reading */
FILE
*
config_open
(
const
unsigned
char
*
filename
)
{
static
FILE
*
config_open
(
const
unsigned
char
*
filename
)
{
assert
(
filename
);
if
(
strspn
(
filename
,
CONFIG_LEGAL_FILENAME_CHARACTERS
)
!=
strlen
(
filename
))
{
/* filename has illegal letters */
...
...
@@ -15,12 +39,12 @@ FILE *config_open(const unsigned char *filename) {
}
/* close configuration file */
int
config_close
(
FILE
*
f
)
{
static
int
config_close
(
FILE
*
f
)
{
assert
(
f
);
return
fclose
(
f
);
}
struct
config_line
*
config_get_commandlines
(
int
argc
,
char
**
argv
)
{
static
struct
config_line
*
config_get_commandlines
(
int
argc
,
char
**
argv
)
{
struct
config_line
*
new
;
struct
config_line
*
front
=
NULL
;
char
*
s
;
...
...
@@ -51,7 +75,7 @@ struct config_line *config_get_commandlines(int argc, char **argv) {
/* parse the config file and strdup into key/value strings. Return list.
* Warn and ignore mangled lines. */
struct
config_line
*
config_get_lines
(
FILE
*
f
)
{
static
struct
config_line
*
config_get_lines
(
FILE
*
f
)
{
struct
config_line
*
new
;
struct
config_line
*
front
=
NULL
;
char
line
[
CONFIG_LINE_MAXLEN
];
...
...
@@ -110,7 +134,7 @@ struct config_line *config_get_lines(FILE *f) {
return
front
;
}
void
config_free_lines
(
struct
config_line
*
front
)
{
static
void
config_free_lines
(
struct
config_line
*
front
)
{
struct
config_line
*
tmp
;
while
(
front
)
{
...
...
@@ -123,7 +147,7 @@ void config_free_lines(struct config_line *front) {
}
}
int
config_compare
(
struct
config_line
*
c
,
char
*
key
,
int
type
,
void
*
arg
)
{
static
int
config_compare
(
struct
config_line
*
c
,
char
*
key
,
int
type
,
void
*
arg
)
{
int
i
;
if
(
strncasecmp
(
c
->
key
,
key
,
strlen
(
c
->
key
)))
...
...
@@ -154,7 +178,7 @@ int config_compare(struct config_line *c, char *key, int type, void *arg) {
return
1
;
}
void
config_assign
(
or_options_t
*
options
,
struct
config_line
*
list
)
{
static
void
config_assign
(
or_options_t
*
options
,
struct
config_line
*
list
)
{
/* iterate through list. for each item convert as appropriate and assign to 'options'. */
...
...
src/or/or.h
View file @
413c7a19
...
...
@@ -94,7 +94,7 @@
#include
"../common/log.h"
#include
"../common/util.h"
#define RECOMMENDED_SOFTWARE_VERSIONS "0.0.2pre8"
#define RECOMMENDED_SOFTWARE_VERSIONS "0.0.
2pre7,0.0.
2pre8"
#define MAXCONNECTIONS 1000
/* upper bound on max connections.
can be lowered by config file */
...
...
@@ -191,8 +191,6 @@
#define RELAY_HEADER_SIZE 8
#define RELAY_STATE_RESOLVING
/* default cipher function */
#define DEFAULT_CIPHER CRYPTO_CIPHER_AES_CTR
/* Used to en/decrypt onion skins */
...
...
@@ -224,25 +222,9 @@
#define CELL_PAYLOAD_SIZE 248
#define CELL_NETWORK_SIZE 256
/* enumeration of types which option values can take */
#define CONFIG_TYPE_STRING 0
#define CONFIG_TYPE_CHAR 1
#define CONFIG_TYPE_INT 2
#define CONFIG_TYPE_LONG 3
#define CONFIG_TYPE_DOUBLE 4
#define CONFIG_TYPE_BOOL 5
#define CONFIG_LINE_MAXLEN 1024
/* legal characters in a filename */
#define CONFIG_LEGAL_FILENAME_CHARACTERS "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.-_/"
struct
config_line
{
char
*
key
;
char
*
value
;
struct
config_line
*
next
;
};
typedef
uint16_t
aci_t
;
/* cell definition */
...
...
@@ -320,9 +302,10 @@ struct connection_t {
*/
crypto_pk_env_t
*
pkey
;
/* public RSA key for the other side */
#ifndef TOR_TLS
/* Used only by OR connections: */
#ifdef TOR_TLS
tor_tls
*
tls
;
#else
/* link encryption */
crypto_cipher_env_t
*
f_crypto
;
crypto_cipher_env_t
*
b_crypto
;
...
...
@@ -441,10 +424,6 @@ struct circuit_t {
uint8_t
state
;
// unsigned char *onion; /* stores the onion when state is CONN_STATE_OPEN_WAIT */
// uint32_t onionlen; /* total onion length */
// uint32_t recvlen; /* length of the onion so far */
void
*
next
;
};
...
...
@@ -584,24 +563,6 @@ void command_process_connected_cell(cell_t *cell, connection_t *conn);
/********************************* config.c ***************************/
/* open configuration file for reading */
FILE
*
config_open
(
const
unsigned
char
*
filename
);
/* close configuration file */
int
config_close
(
FILE
*
f
);
struct
config_line
*
config_get_commandlines
(
int
argc
,
char
**
argv
);
/* parse the config file and strdup into key/value strings. Return list.
* * * Warn and ignore mangled lines. */
struct
config_line
*
config_get_lines
(
FILE
*
f
);
void
config_free_lines
(
struct
config_line
*
front
);
int
config_compare
(
struct
config_line
*
c
,
char
*
key
,
int
type
,
void
*
arg
);
void
config_assign
(
or_options_t
*
options
,
struct
config_line
*
list
);
/* return 0 if success, <0 if failure. */
int
getconfig
(
int
argc
,
char
**
argv
,
or_options_t
*
options
);
...
...
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