Fixed debian bug
authorAlan T. DeKok <aland@freeradius.org>
Mon, 21 Dec 2009 13:16:45 +0000 (14:16 +0100)
committerAlan T. DeKok <aland@freeradius.org>
Mon, 21 Dec 2009 13:16:45 +0000 (14:16 +0100)
debian/patches/rlm_perl.diff [deleted file]
src/modules/rlm_perl/rlm_perl.c

diff --git a/debian/patches/rlm_perl.diff b/debian/patches/rlm_perl.diff
deleted file mode 100644 (file)
index e243dcf..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
---- freeradius-2.0.4+dfsg.orig/src/modules/rlm_perl/rlm_perl.c
-+++ freeradius-2.0.4+dfsg/src/modules/rlm_perl/rlm_perl.c
-@@ -717,10 +717,13 @@
-       HV              *rad_request_proxy_reply_hv;
-       AV              *end_AV;
--      char *embed[4];
-+      char **embed;
-+        char **envp = NULL;
-       const char *xlat_name;
-       int exitstatus = 0, argc=0;
-+        embed = rad_malloc(4*(sizeof(char *)));
-+        memset(embed, 0, sizeof(4*(sizeof(char *))));
-       /*
-        *      Set up a storage area for instance data
-        */
-@@ -749,6 +752,7 @@
-               argc = 3;
-       }
-+        PERL_SYS_INIT3(&argc, &embed, &envp);
- #ifdef USE_ITHREADS
-       inst->perl = interp;
-@@ -1296,6 +1300,7 @@
-       perl_free(inst->perl);
- #endif
-+        PERL_SYS_TERM();
-       free(inst);
-       return exitstatus;
- }
index 174e74d..b1ae3fd 100644 (file)
@@ -408,10 +408,13 @@ static int perl_instantiate(CONF_SECTION *conf, void **instance)
        HV              *rad_request_proxy_reply_hv;
        AV              *end_AV;
 
-       char *embed[4];
+       char **embed;
+        char **envp = NULL;
        const char *xlat_name;
        int exitstatus = 0, argc=0;
 
+        embed = rad_malloc(4*(sizeof(char *)));
+        memset(embed, 0, sizeof(4*(sizeof(char *))));
        /*
         *      Set up a storage area for instance data
         */
@@ -449,6 +452,7 @@ static int perl_instantiate(CONF_SECTION *conf, void **instance)
                argc = 3;
        }
 
+        PERL_SYS_INIT3(&argc, &embed, &envp);
 #ifdef USE_ITHREADS
        if ((inst->perl = perl_alloc()) == NULL) {
                radlog(L_DBG, "rlm_perl: No memory for allocating new perl !");
@@ -970,6 +974,7 @@ static int perl_detach(void *instance)
        perl_free(inst->perl);
 #endif
 
+        PERL_SYS_TERM();
        free(inst);
        return exitstatus;
 }