Browse Source

Merge branch '024_msvc_more'

Nick Mathewson 11 years ago
parent
commit
eea69b7020
5 changed files with 15 additions and 3 deletions
  1. 2 0
      changes/msvc
  2. 5 1
      src/common/Makefile.nmake
  3. 3 0
      src/or/Makefile.nmake
  4. 2 2
      src/or/onion.h
  5. 3 0
      src/win32/orconfig.h

+ 2 - 0
changes/msvc

@@ -2,3 +2,5 @@
     - Correctly define HAVE_EVENT_BASE_LOOPEXIT, since we only build
     - Correctly define HAVE_EVENT_BASE_LOOPEXIT, since we only build
       with MSVC when using Libevent 2.0 or later. Fixes bug 7308.
       with MSVC when using Libevent 2.0 or later. Fixes bug 7308.
       Reported by "ultramage".
       Reported by "ultramage".
+    - Make the ntor and curve25519 code build correctly with MSVC.
+      Fix on 0.2.4.8-alpha.

+ 5 - 1
src/common/Makefile.nmake

@@ -6,10 +6,14 @@ LIBOR_OBJECTS = address.obj compat.obj container.obj di_ops.obj \
 	log.obj memarea.obj mempool.obj procmon.obj util.obj \
 	log.obj memarea.obj mempool.obj procmon.obj util.obj \
 	util_codedigest.obj
 	util_codedigest.obj
 
 
-LIBOR_CRYPTO_OBJECTS = aes.obj crypto.obj torgzip.obj tortls.obj
+LIBOR_CRYPTO_OBJECTS = aes.obj crypto.obj torgzip.obj tortls.obj \
+	crypto_curve25519.obj curve25519-donna.obj
 
 
 LIBOR_EVENT_OBJECTS = compat_libevent.obj
 LIBOR_EVENT_OBJECTS = compat_libevent.obj
 
 
+curve25519-donna.obj: ..\ext\curve25519_donna\curve25519-donna.c
+	$(CC) $(CFLAGS) /D inline=_inline /c ..\ext\curve25519_donna\curve25519-donna.c
+
 libor.lib: $(LIBOR_OBJECTS)
 libor.lib: $(LIBOR_OBJECTS)
 	lib $(LIBOR_OBJECTS) /out:libor.lib
 	lib $(LIBOR_OBJECTS) /out:libor.lib
 
 

+ 3 - 0
src/or/Makefile.nmake

@@ -44,6 +44,9 @@ LIBTOR_OBJECTS = \
   nodelist.obj \
   nodelist.obj \
   ntmain.obj \
   ntmain.obj \
   onion.obj \
   onion.obj \
+  onion_fast.obj \
+  onion_ntor.obj \
+  onion_tap.obj \
   policies.obj \
   policies.obj \
   reasons.obj \
   reasons.obj \
   relay.obj \
   relay.obj \

+ 2 - 2
src/or/onion.h

@@ -101,9 +101,9 @@ typedef struct extended_cell_t {
 
 
 int create_cell_parse(create_cell_t *cell_out, const cell_t *cell_in);
 int create_cell_parse(create_cell_t *cell_out, const cell_t *cell_in);
 int created_cell_parse(created_cell_t *cell_out, const cell_t *cell_in);
 int created_cell_parse(created_cell_t *cell_out, const cell_t *cell_in);
-int extend_cell_parse(extend_cell_t *cell_out, uint8_t command,
+int extend_cell_parse(extend_cell_t *cell_out, const uint8_t command,
                       const uint8_t *payload_in, size_t payload_len);
                       const uint8_t *payload_in, size_t payload_len);
-int extended_cell_parse(extended_cell_t *cell_out, uint8_t command,
+int extended_cell_parse(extended_cell_t *cell_out, const uint8_t command,
                         const uint8_t *payload_in, size_t payload_len);
                         const uint8_t *payload_in, size_t payload_len);
 
 
 int create_cell_format(cell_t *cell_out, const create_cell_t *cell_in);
 int create_cell_format(cell_t *cell_out, const create_cell_t *cell_in);

+ 3 - 0
src/win32/orconfig.h

@@ -250,3 +250,6 @@
 #define SHARE_DATADIR ""
 #define SHARE_DATADIR ""
 #define HAVE_EVENT2_DNS_H
 #define HAVE_EVENT2_DNS_H
 #define HAVE_EVENT_BASE_LOOPEXIT
 #define HAVE_EVENT_BASE_LOOPEXIT
+#define CURVE25519_ENABLED
+#define USE_CURVE25519_DONNA
+