Make log_fn work on apples with no workarounds needed in main code

svn:r330
This commit is contained in:
Nick Mathewson 2003-06-17 21:15:25 +00:00
parent df2789c111
commit b9480620c6
3 changed files with 20 additions and 11 deletions

View File

@ -487,6 +487,12 @@ which reveals the downstream node.
cells, echo their contents to the corresponding TCP stream. cells, echo their contents to the corresponding TCP stream.
[XXX Mention zlib encoding. -NM] [XXX Mention zlib encoding. -NM]
5.2. Closing connections
[Note -- TCP streams can only be half-closed for reading. Our
Bickford's conversation was incorrect. -NM]
When one side of the TCP stream is closed, the corresponding edge When one side of the TCP stream is closed, the corresponding edge
node sends a RELAY_END cell along the circuit; upon receiving a node sends a RELAY_END cell along the circuit; upon receiving a
RELAY_END cell, the edge node closes its side of the corresponding RELAY_END cell, the edge node closes its side of the corresponding

View File

@ -13,10 +13,13 @@
void log(int severity, const char *format, ...); void log(int severity, const char *format, ...);
#ifdef __GNUC__ #ifdef __GNUC__
#define log_fn(severity, format) \ #ifdef __APPLE_CPP__
log((severity), "%s(): " format , __PRETTY_FUNCTION__) #define log_fn(severity, args...) \
#define log_fnf(severity, format, args...) \ log((severity), __PRETTY_FUNCTION__ "(): " args)
log((severity), "%s(): " format , __PRETTY_FUNCTION__ , ##args) #else
#define log_fn(severity, format, args...) \
log((severity), "%s(): " format, __PRETTY_FUNCTION__ , ##args)
#endif
#else #else
#define log_fn log #define log_fn log
#define log_fnf log #define log_fnf log

View File

@ -47,7 +47,7 @@ int learn_my_address(struct sockaddr_in *me) {
log_fn(LOG_ERR,"Error obtaining local hostname"); log_fn(LOG_ERR,"Error obtaining local hostname");
return -1; return -1;
} }
log_fnf(LOG_DEBUG,"localhostname is '%s'.",localhostname); log_fn(LOG_DEBUG,"localhostname is '%s'.",localhostname);
localhost = gethostbyname(localhostname); localhost = gethostbyname(localhostname);
if (!localhost) { if (!localhost) {
log_fn(LOG_ERR,"Error obtaining local host info."); log_fn(LOG_ERR,"Error obtaining local host info.");
@ -57,7 +57,7 @@ int learn_my_address(struct sockaddr_in *me) {
me->sin_family = AF_INET; me->sin_family = AF_INET;
memcpy((void *)&me->sin_addr,(void *)localhost->h_addr,sizeof(struct in_addr)); memcpy((void *)&me->sin_addr,(void *)localhost->h_addr,sizeof(struct in_addr));
me->sin_port = htons(options.ORPort); me->sin_port = htons(options.ORPort);
log_fnf(LOG_DEBUG,"chose address as '%s'.",inet_ntoa(me->sin_addr)); log_fn(LOG_DEBUG,"chose address as '%s'.",inet_ntoa(me->sin_addr));
return 0; return 0;
} }
@ -69,7 +69,7 @@ void router_retry_connections(void) {
for (i=0;i<directory->n_routers;i++) { for (i=0;i<directory->n_routers;i++) {
router = directory->routers[i]; router = directory->routers[i];
if(!connection_exact_get_by_addr_port(router->addr,router->or_port)) { /* not in the list */ if(!connection_exact_get_by_addr_port(router->addr,router->or_port)) { /* not in the list */
log_fnf(LOG_DEBUG,"connecting to OR %s:%u.",router->address,router->or_port); log_fn(LOG_DEBUG,"connecting to OR %s:%u.",router->address,router->or_port);
connection_or_connect(router); connection_or_connect(router);
} }
} }
@ -199,26 +199,26 @@ int router_get_list_from_file(char *routerfile)
assert(routerfile); assert(routerfile);
if (strcspn(routerfile,CONFIG_LEGAL_FILENAME_CHARACTERS) != 0) { if (strcspn(routerfile,CONFIG_LEGAL_FILENAME_CHARACTERS) != 0) {
log_fnf(LOG_ERR,"Filename %s contains illegal characters.",routerfile); log_fn(LOG_ERR,"Filename %s contains illegal characters.",routerfile);
return -1; return -1;
} }
if(stat(routerfile, &statbuf) < 0) { if(stat(routerfile, &statbuf) < 0) {
log_fnf(LOG_ERR,"Could not stat %s.",routerfile); log_fn(LOG_ERR,"Could not stat %s.",routerfile);
return -1; return -1;
} }
/* open the router list */ /* open the router list */
fd = open(routerfile,O_RDONLY,0); fd = open(routerfile,O_RDONLY,0);
if (fd<0) { if (fd<0) {
log_fnf(LOG_ERR,"Could not open %s.",routerfile); log_fn(LOG_ERR,"Could not open %s.",routerfile);
return -1; return -1;
} }
string = tor_malloc(statbuf.st_size+1); string = tor_malloc(statbuf.st_size+1);
if(read(fd,string,statbuf.st_size) != statbuf.st_size) { if(read(fd,string,statbuf.st_size) != statbuf.st_size) {
log_fnf(LOG_ERR,"Couldn't read all %d bytes of file '%s'.",statbuf.st_size,routerfile); log_fn(LOG_ERR,"Couldn't read all %d bytes of file '%s'.",statbuf.st_size,routerfile);
free(string); free(string);
close(fd); close(fd);
return -1; return -1;