From 4de08a612f085a625a6436ae8fde5bdcd62dcf17 Mon Sep 17 00:00:00 2001 From: foobar Date: Sat, 8 Jan 2005 12:02:50 +0000 Subject: [PATCH] MFH: - Fix some memory leaks --- ext/snmp/php_snmp.h | 1 + ext/snmp/snmp.c | 18 ++++++++++++++---- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/ext/snmp/php_snmp.h b/ext/snmp/php_snmp.h index cf572ec681..635d2e01b9 100644 --- a/ext/snmp/php_snmp.h +++ b/ext/snmp/php_snmp.h @@ -39,6 +39,7 @@ extern zend_module_entry snmp_module_entry; #endif PHP_MINIT_FUNCTION(snmp); +PHP_MSHUTDOWN_FUNCTION(snmp); PHP_MINFO_FUNCTION(snmp); PHP_FUNCTION(snmpget); diff --git a/ext/snmp/snmp.c b/ext/snmp/snmp.c index 2bc437ba78..e9426f34a7 100644 --- a/ext/snmp/snmp.c +++ b/ext/snmp/snmp.c @@ -151,7 +151,7 @@ zend_module_entry snmp_module_entry = { "snmp", snmp_functions, PHP_MINIT(snmp), - NULL, + PHP_MSHUTDOWN(snmp), NULL, NULL, PHP_MINFO(snmp), @@ -178,7 +178,7 @@ static void php_snmp_init_globals(zend_snmp_globals *snmp_globals) */ PHP_MINIT_FUNCTION(snmp) { - init_snmp("snmpapp"); + init_snmp("php"); ZEND_INIT_MODULE_GLOBALS(snmp, php_snmp_init_globals, NULL); @@ -203,6 +203,16 @@ PHP_MINIT_FUNCTION(snmp) } /* }}} */ +/* {{{ PHP_MSHUTDOWN_FUNCTION + */ +PHP_MSHUTDOWN_FUNCTION(snmp) +{ + snmp_shutdown("php"); + + return SUCCESS; +} +/* }}} */ + /* {{{ PHP_MINFO_FUNCTION */ PHP_MINFO_FUNCTION(snmp) @@ -816,7 +826,7 @@ static int netsnmp_session_gen_auth_key(struct snmp_session *s, char *pass TSRML s->securityAuthKeyLen = USM_AUTH_KU_LEN; if (s->securityAuthProto == NULL) { /* get .conf set default */ - oid *def = get_default_authtype(&(s->securityAuthProtoLen)); + const oid *def = get_default_authtype(&(s->securityAuthProtoLen)); s->securityAuthProto = snmp_duplicate_objid(def, s->securityAuthProtoLen); } if (s->securityAuthProto == NULL) { @@ -845,7 +855,7 @@ static int netsnmp_session_gen_sec_key(struct snmp_session *s, u_char *pass TSRM s->securityPrivKeyLen = USM_PRIV_KU_LEN; if (s->securityPrivProto == NULL) { /* get .conf set default */ - oid *def = get_default_privtype(&(s->securityPrivProtoLen)); + const oid *def = get_default_privtype(&(s->securityPrivProtoLen)); s->securityPrivProto = snmp_duplicate_objid(def, s->securityPrivProtoLen); } if (s->securityPrivProto == NULL) { -- 2.40.0