ソースを参照

Try once again to make BSD compilation happy.

svn:r16474
Nick Mathewson 16 年 前
コミット
f6879caa04
3 ファイル変更11 行追加3 行削除
  1. 7 0
      src/common/address.c
  2. 2 1
      src/common/address.h
  3. 2 2
      src/or/connection_edge.c

+ 7 - 0
src/common/address.c

@@ -635,6 +635,13 @@ tor_addr_from_ipv6_bytes(tor_addr_t *dest, const char *ipv6_bytes)
   memcpy(dest->addr.in6_addr.s6_addr, ipv6_bytes, 16);
 }
 
+/** DOCDOC */
+void
+tor_addr_from_in6(tor_addr_t *dest, const struct in6_addr *in6)
+{
+  tor_addr_from_ipv6_bytes(dest, (const char*)in6->s6_addr);
+}
+
 /** Copy a tor_addr_t from <b>src</b> to <b>dest</b>.
  */
 void

+ 2 - 1
src/common/address.h

@@ -127,7 +127,8 @@ void tor_addr_from_ipv4n(tor_addr_t *dest, uint32_t v4addr);
  * order. */
 #define tor_addr_from_ipv4h(dest, v4addr)       \
   tor_addr_from_ipv4n((dest), htonl(v4addr))
-void tor_addr_from_ipv6_bytes(tor_addr_t *dest, const char *byets);
+void tor_addr_from_ipv6_bytes(tor_addr_t *dest, const char *bytes);
+void tor_addr_from_in6(tor_addr_t *dest, const struct in6_addr *in6);
 int tor_addr_is_null(const tor_addr_t *addr);
 int tor_addr_is_loopback(const tor_addr_t *addr);
 

+ 2 - 2
src/or/connection_edge.c

@@ -1762,13 +1762,13 @@ connection_ap_get_original_destination(edge_connection_t *conn,
   if (pnl.af == AF_INET) {
     tor_addr_from_ipv4n(&addr, pnl.rdaddr.v4.s_addr);
   } else if (pnl.af == AF_INET6) {
-    tor_addr_from_ipv6_bytes(&addr, pnl.rdaddr.v6.s6_addr);
+    tor_addr_from_in6(&addr, &pnl.rdaddr.v6);
   } else {
     tor_fragile_assert();
     return -1;
   }
 
-  tor_addr_to_string(req->address, &addr, sizeof(req->address), 0);
+  tor_addr_to_str(req->address, &addr, sizeof(req->address), 0);
   req->port = ntohs(pnl.rdport);
 
   return 0;