tweaks and bugfix on resolve/resolved code

svn:r1980
This commit is contained in:
Roger Dingledine
2004-06-17 21:11:09 +00:00
parent 22c5ddb588
commit 207fcb35d1
2 changed files with 3 additions and 4 deletions
-3
View File
@@ -409,9 +409,6 @@ int fetch_from_buf_http(buf_t *buf,
return 1;
}
#define SOCKS_COMMAND_CONNECT 0x01
#define SOCKS_COMMAND_RESOLVE 0xF0
/** There is a (possibly incomplete) socks handshake on <b>buf</b>, of one
* of the forms
* - socks4: "socksheader username\\0"
+3 -1
View File
@@ -372,13 +372,15 @@ static int connection_ap_handshake_process_socks(connection_t *conn) {
} /* else socks handshake is done, continue processing */
if (socks->command == SOCKS_COMMAND_RESOLVE) {
uint32_t answer;
/* Reply to resolves immediately if we can. */
if (strlen(socks->address) > RELAY_PAYLOAD_SIZE) {
connection_ap_handshake_socks_resolved(conn,RESOLVED_TYPE_ERROR,0,NULL);
conn->socks_request->has_finished = 1;
connection_mark_for_close(conn);
return 0;
}
uint32_t answer = htonl(client_dns_lookup_entry(socks->address));
answer = htonl(client_dns_lookup_entry(socks->address));
if (answer) {
connection_ap_handshake_socks_resolved(conn,RESOLVED_TYPE_IPV4,4,
(char*)&answer);