- simplify configure.in
[tinc] / src / net.c
index c1030b5..52e9bf8 100644 (file)
--- a/src/net.c
+++ b/src/net.c
@@ -17,7 +17,7 @@
     along with this program; if not, write to the Free Software
     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 
-    $Id: net.c,v 1.35.4.184 2003/04/03 11:43:17 guus Exp $
+    $Id: net.c,v 1.35.4.187 2003/07/06 17:15:25 guus Exp $
 */
 
 #include "config.h"
@@ -31,6 +31,7 @@
 #include <signal.h>
 #include <sys/time.h>
 #include <sys/types.h>
+#include <sys/stat.h>
 #include <syslog.h>
 #include <unistd.h>
 #include <sys/ioctl.h>
 
 #include "system.h"
 
-#ifndef HAVE_RAND_PSEUDO_BYTES
-#define RAND_pseudo_bytes RAND_bytes
-#endif
-
 int do_purge = 0;
 int sighup = 0;
 int sigalrm = 0;
@@ -385,6 +382,7 @@ void main_loop(void)
                                        syslog(LOG_INFO, _("Regenerating symmetric key"));
 
                                RAND_pseudo_bytes(myself->key, myself->keylength);
+                               EVP_DecryptInit_ex(&packet_ctx, myself->cipher, NULL, myself->key, myself->key + myself->cipher->key_len);
                                send_key_changed(broadcast, myself);
                                keyexpires = now + keylifetime;
                        }
@@ -432,6 +430,7 @@ void main_loop(void)
                                
                                if(c->outgoing) {
                                        free(c->outgoing->name);
+                                       freeaddrinfo(c->outgoing->ai);
                                        free(c->outgoing);
                                        c->outgoing = NULL;
                                }