]> Pileus Git - ~andy/fetchmail/blobdiff - socket.c
Wautier's fix.
[~andy/fetchmail] / socket.c
index bb68833ca36ee010f31b02f1910f64543837f496..3ba586962b0f2428f7b842ee2619873791caa217 100644 (file)
--- a/socket.c
+++ b/socket.c
@@ -38,7 +38,7 @@ int SockOpen(const char *host, const char *service, const char *options)
   int i;
   struct addrinfo *ai, req;
 #if NET_SECURITY
-  struct net_security_operation request[NET_SECURITY_OPERATION_MAX];
+  void *request = NULL;
   int requestlen;
 #endif /* NET_SECURITY */
 
@@ -54,10 +54,12 @@ int SockOpen(const char *host, const char *service, const char *options)
   if (!options)
     requestlen = 0;
   else
-    if (net_security_strtorequest((char *)options, request, &requestlen))
+    if (net_security_strtorequest((char *)options, &request, &requestlen))
       goto ret;
 
   i = inner_connect(ai, request, requestlen, NULL,NULL, "fetchmail", NULL);
+  if (request)
+    free(request);
 
 ret:
 #else /* NET_SECURITY */