Browse Source

Merge remote branch 'sebastian/bug2314' into maint-0.2.2

Nick Mathewson 13 years ago
parent
commit
bb5f99d4df
6 changed files with 16 additions and 8 deletions
  1. 4 0
      changes/bug2314
  2. 2 1
      src/common/crypto.c
  3. 1 1
      src/or/cpuworker.c
  4. 5 3
      src/or/eventdns.c
  5. 3 3
      src/or/ntmain.c
  6. 1 0
      src/test/test_util.c

+ 4 - 0
changes/bug2314

@@ -0,0 +1,4 @@
+  o Minor bugfixes:
+    - Fix a bunch of compile warnings revealed by mingw with gcc 4.5. Fixes
+      bug 2314.
+

+ 2 - 1
src/common/crypto.c

@@ -1959,14 +1959,15 @@ seed_weak_rng(void)
 int
 crypto_seed_rng(int startup)
 {
-  char buf[ADD_ENTROPY];
   int rand_poll_status = 0;
 
   /* local variables */
 #ifdef MS_WINDOWS
+  unsigned char buf[ADD_ENTROPY];
   static int provider_set = 0;
   static HCRYPTPROV provider;
 #else
+  char buf[ADD_ENTROPY];
   static const char *filenames[] = {
     "/dev/srandom", "/dev/urandom", "/dev/random", NULL
   };

+ 1 - 1
src/or/cpuworker.c

@@ -250,7 +250,7 @@ cpuworker_main(void *data)
   for (;;) {
     ssize_t r;
 
-    if ((r = recv(fd, &question_type, 1, 0)) != 1) {
+    if ((r = recv(fd, (void *)&question_type, 1, 0)) != 1) {
 //      log_fn(LOG_ERR,"read type failed. Exiting.");
       if (r == 0) {
         log_info(LD_OR,

+ 5 - 3
src/or/eventdns.c

@@ -1245,7 +1245,8 @@ nameserver_read(struct nameserver *ns) {
 
 	for (;;) {
 		const int r =
-            (int)recvfrom(ns->socket, packet, (socklen_t)sizeof(packet), 0,
+            (int)recvfrom(ns->socket, (void*)packet,
+						  (socklen_t)sizeof(packet), 0,
 						  sa, &addrlen);
 		if (r < 0) {
 			int err = last_error(ns->socket);
@@ -1276,7 +1277,7 @@ server_port_read(struct evdns_server_port *s) {
 
 	for (;;) {
 		addrlen = (socklen_t)sizeof(struct sockaddr_storage);
-		r = recvfrom(s->socket, packet, sizeof(packet), 0,
+		r = recvfrom(s->socket, (void*)packet, sizeof(packet), 0,
 					 (struct sockaddr*) &addr, &addrlen);
 		if (r < 0) {
 			int err = last_error(s->socket);
@@ -2012,7 +2013,8 @@ evdns_request_timeout_callback(int fd, short events, void *arg) {
 /* 2 other failure */
 static int
 evdns_request_transmit_to(struct evdns_request *req, struct nameserver *server) {
-	const ssize_t r = send(server->socket, req->request, req->request_len, 0);
+	const ssize_t r = send(server->socket, (void*)req->request,
+                         req->request_len, 0);
 	if (r < 0) {
 		int err = last_error(server->socket);
 		if (error_is_eagain(err)) return 1;

+ 3 - 3
src/or/ntmain.c

@@ -518,7 +518,7 @@ nt_service_install(int argc, char **argv)
   SERVICE_DESCRIPTIONA sdBuff;
   char *command;
   char *errmsg;
-  const char *user_acct = GENSRV_USERACCT;
+  const char *user_acct = NULL;
   const char *password = "";
   int i;
   OSVERSIONINFOEX info;
@@ -562,13 +562,12 @@ nt_service_install(int argc, char **argv)
       is_win2k_or_worse = 1;
   }
 
-  if (user_acct == GENSRV_USERACCT) {
+  if (!user_acct) {
     if (is_win2k_or_worse) {
       /* On Win2k, there is no LocalService account, so we actually need to
        * fall back on NULL (the system account). */
       printf("Running on Win2K or earlier, so the LocalService account "
              "doesn't exist.  Falling back to SYSTEM account.\n");
-      user_acct = NULL;
     } else {
       /* Genericity is apparently _so_ last year in Redmond, where some
        * accounts are accounts that you can look up, and some accounts
@@ -577,6 +576,7 @@ nt_service_install(int argc, char **argv)
        */
       printf("Running on a Post-Win2K OS, so we'll assume that the "
              "LocalService account exists.\n");
+      user_acct = GENSRV_USERACCT;
     }
   } else if (0 && service_fns.LookupAccountNameA_fn(NULL, // On this system
                             user_acct,

+ 1 - 0
src/test/test_util.c

@@ -1200,6 +1200,7 @@ static void
 test_util_load_win_lib(void *ptr)
 {
   HANDLE h = load_windows_system_library("advapi32.dll");
+  (void) ptr;
 
   tt_assert(h);
  done: