[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
[or-cvs] Patch from goodell for task 131: Do not die on internal add...
- To: or-cvs@xxxxxxxxxxxxx
- Subject: [or-cvs] Patch from goodell for task 131: Do not die on internal add...
- From: nickm@xxxxxxxx (Nick Mathewson)
- Date: Mon, 9 May 2005 00:31:03 -0400 (EDT)
- Delivered-to: archiver@seul.org
- Delivered-to: or-cvs-outgoing@seul.org
- Delivered-to: or-cvs@seul.org
- Delivery-date: Mon, 09 May 2005 00:31:39 -0400
- Reply-to: or-dev@xxxxxxxxxxxxx
- Sender: owner-or-cvs@xxxxxxxxxxxxx
Update of /home/or/cvsroot/tor/src/or
In directory moria.mit.edu:/tmp/cvs-serv25644
Modified Files:
config.c or.h router.c
Log Message:
Patch from goodell for task 131: Do not die on internal address if we are not publishing.
Index: config.c
===================================================================
RCS file: /home/or/cvsroot/tor/src/or/config.c,v
retrieving revision 1.342
retrieving revision 1.343
diff -u -d -r1.342 -r1.343
--- config.c 7 May 2005 04:49:09 -0000 1.342
+++ config.c 9 May 2005 04:31:00 -0000 1.343
@@ -952,7 +952,7 @@
* in <b>addr</b>.
*/
int
-resolve_my_address(const char *address, uint32_t *addr)
+resolve_my_address(or_options_t *options, uint32_t *addr)
{
struct in_addr in;
struct hostent *rent;
@@ -960,6 +960,7 @@
int explicit_ip=1;
char tmpbuf[INET_NTOA_BUF_LEN];
static uint32_t old_addr=0;
+ const char *address = options->Address;
tor_assert(addr);
@@ -1001,7 +1002,8 @@
log_fn(LOG_WARN,"Address '%s' resolves to private IP '%s'. "
"Please set the Address config option to be the IP you want to use.",
hostname, tmpbuf);
- return -1;
+ if(!options->NoPublish)
+ return -1;
}
log_fn(LOG_DEBUG, "Resolved Address to %s.", tmpbuf);
@@ -1299,7 +1301,7 @@
if (server_mode(options)) {
/* confirm that our address isn't broken, so we can complain now */
uint32_t tmp;
- if (resolve_my_address(options->Address, &tmp) < 0)
+ if (resolve_my_address(options, &tmp) < 0)
result = -1;
}
Index: or.h
===================================================================
RCS file: /home/or/cvsroot/tor/src/or/or.h,v
retrieving revision 1.606
retrieving revision 1.607
diff -u -d -r1.606 -r1.607
--- or.h 7 May 2005 05:55:06 -0000 1.606
+++ or.h 9 May 2005 04:31:00 -0000 1.607
@@ -1249,7 +1249,7 @@
int config_get_lines(char *string, struct config_line_t **result);
void config_free_lines(struct config_line_t *front);
int config_trial_assign(struct config_line_t *list, int reset);
-int resolve_my_address(const char *address, uint32_t *addr);
+int resolve_my_address(or_options_t *options, uint32_t *addr);
void options_init(or_options_t *options);
int init_from_config(int argc, char **argv);
int config_init_logs(or_options_t *options, int validate_only);
Index: router.c
===================================================================
RCS file: /home/or/cvsroot/tor/src/or/router.c,v
retrieving revision 1.171
retrieving revision 1.172
diff -u -d -r1.171 -r1.172
--- router.c 7 May 2005 05:17:36 -0000 1.171
+++ router.c 9 May 2005 04:31:00 -0000 1.172
@@ -672,7 +672,7 @@
if (!desc_is_dirty && !force)
return 0;
- if (resolve_my_address(options->Address, &addr) < 0) {
+ if (resolve_my_address(options, &addr) < 0) {
log_fn(LOG_WARN,"options->Address didn't resolve into an IP.");
return -1;
}