I would like to enable DLL support for the applications including snmpd
and snmptrapd. We currently only support using the library DLL when
building the Perl module.
After some research and testing, it appears that the applications work
fine with the library DLL and there doesn't seem to be any issues with
data corruption like we originally thought there would be.
For the applications to work, all extern declared variables in the
library that are used by the applications must be changed to
NETSNMP_IMPORT. Most were changed already in the past but some were missed.
These changes will also fix the problem with SNMP v3 encryption in the
Perl module reported recently (SNMPv3 - problem with auth/encr sessions
with Perl module).
The attached patch fixes the externs, and allows for building with the
DLL in the MSVC command line build system.
This should not affect non-Windows in any way, and will only affect
Windows by allowing the user to build with the DLL without having to
modify the build files by hand. It will also fix the SNMP v3 issue with
Perl.
Alex
diff -ur net-snmp-5.4.pre4.fresh/include/net-snmp/library/snmpTCPDomain.h
net-snmp-5.4.pre4.dll/include/net-snmp/library/snmpTCPDomain.h
--- net-snmp-5.4.pre4.fresh/include/net-snmp/library/snmpTCPDomain.h Thu Sep
14 20:48:48 2006
+++ net-snmp-5.4.pre4.dll/include/net-snmp/library/snmpTCPDomain.h Wed Oct
25 09:59:20 2006
@@ -23,7 +23,7 @@
*/
#define TRANSPORT_DOMAIN_TCP_IP 1,3,6,1,2,1,100,1,5
-extern oid netsnmp_snmpTCPDomain[];
+NETSNMP_IMPORT oid netsnmp_snmpTCPDomain[];
netsnmp_transport *netsnmp_tcp_transport(struct sockaddr_in *addr, int local);
diff -ur net-snmp-5.4.pre4.fresh/include/net-snmp/library/snmpTCPIPv6Domain.h
net-snmp-5.4.pre4.dll/include/net-snmp/library/snmpTCPIPv6Domain.h
--- net-snmp-5.4.pre4.fresh/include/net-snmp/library/snmpTCPIPv6Domain.h
Thu Jan 29 09:13:58 2004
+++ net-snmp-5.4.pre4.dll/include/net-snmp/library/snmpTCPIPv6Domain.h Wed Oct
25 09:59:44 2006
@@ -14,7 +14,7 @@
*/
#define TRANSPORT_DOMAIN_TCP_IPV6 1,3,6,1,2,1,100,1,6
-extern oid netsnmp_TCPIPv6Domain[];
+NETSNMP_IMPORT oid netsnmp_TCPIPv6Domain[];
netsnmp_transport *netsnmp_tcp6_transport(struct sockaddr_in6 *addr,
int local);
diff -ur net-snmp-5.4.pre4.fresh/include/net-snmp/library/snmpUDPIPv6Domain.h
net-snmp-5.4.pre4.dll/include/net-snmp/library/snmpUDPIPv6Domain.h
--- net-snmp-5.4.pre4.fresh/include/net-snmp/library/snmpUDPIPv6Domain.h
Fri Jul 30 16:01:24 2004
+++ net-snmp-5.4.pre4.dll/include/net-snmp/library/snmpUDPIPv6Domain.h Wed Oct
25 09:59:58 2006
@@ -14,7 +14,7 @@
*/
#define TRANSPORT_DOMAIN_UDP_IPV6 1,3,6,1,2,1,100,1,2
-extern oid netsnmp_UDPIPv6Domain[];
+NETSNMP_IMPORT oid netsnmp_UDPIPv6Domain[];
netsnmp_transport *snmp_udp6_transport(struct sockaddr_in6 *addr,
int local);
diff -ur net-snmp-5.4.pre4.fresh/include/net-snmp/library/snmpUnixDomain.h
net-snmp-5.4.pre4.dll/include/net-snmp/library/snmpUnixDomain.h
--- net-snmp-5.4.pre4.fresh/include/net-snmp/library/snmpUnixDomain.h Thu Sep
14 20:48:48 2006
+++ net-snmp-5.4.pre4.dll/include/net-snmp/library/snmpUnixDomain.h Wed Oct
25 10:00:44 2006
@@ -23,7 +23,7 @@
*/
#define TRANSPORT_DOMAIN_LOCAL 1,3,6,1,2,1,100,1,13
-extern oid netsnmp_UnixDomain[];
+NETSNMP_IMPORT oid netsnmp_UnixDomain[];
netsnmp_transport *netsnmp_unix_transport(struct sockaddr_un *addr,
int local);
diff -ur net-snmp-5.4.pre4.fresh/include/net-snmp/library/snmp_api.h
net-snmp-5.4.pre4.dll/include/net-snmp/library/snmp_api.h
--- net-snmp-5.4.pre4.fresh/include/net-snmp/library/snmp_api.h Wed Sep 20
16:26:44 2006
+++ net-snmp-5.4.pre4.dll/include/net-snmp/library/snmp_api.h Wed Oct 25
10:01:10 2006
@@ -356,9 +356,9 @@
#endif
#define SNMP_DEFAULT_PRIV_PROTOLEN USM_LENGTH_OID_TRANSFORM
- extern const char *snmp_api_errstring(int);
- extern void snmp_perror(const char *);
- extern void snmp_set_detail(const char *);
+ NETSNMP_IMPORT const char *snmp_api_errstring(int);
+ NETSNMP_IMPORT void snmp_perror(const char *);
+ NETSNMP_IMPORT void snmp_set_detail(const char *);
#define SNMP_MAX_MSG_SIZE 1472 /* ethernet MTU minus IP/UDP header */
#define SNMP_MAX_MSG_V3_HDRS (4+3+4+7+7+3+7+16) /* fudge factor=16 */
diff -ur net-snmp-5.4.pre4.fresh/include/net-snmp/library/snmp_debug.h
net-snmp-5.4.pre4.dll/include/net-snmp/library/snmp_debug.h
--- net-snmp-5.4.pre4.fresh/include/net-snmp/library/snmp_debug.h Thu Sep
14 20:48:48 2006
+++ net-snmp-5.4.pre4.dll/include/net-snmp/library/snmp_debug.h Wed Oct 25
10:01:30 2006
@@ -270,8 +270,8 @@
char enabled;
} netsnmp_token_descr;
-extern int debug_num_tokens;
-extern netsnmp_token_descr dbg_tokens[MAX_DEBUG_TOKENS];
+NETSNMP_IMPORT int debug_num_tokens;
+NETSNMP_IMPORT netsnmp_token_descr dbg_tokens[MAX_DEBUG_TOKENS];
#ifdef __cplusplus
}
diff -ur net-snmp-5.4.pre4.fresh/include/net-snmp/library/snmp_transport.h
net-snmp-5.4.pre4.dll/include/net-snmp/library/snmp_transport.h
--- net-snmp-5.4.pre4.fresh/include/net-snmp/library/snmp_transport.h Tue Sep
19 10:45:30 2006
+++ net-snmp-5.4.pre4.dll/include/net-snmp/library/snmp_transport.h Wed Oct
25 10:01:52 2006
@@ -22,16 +22,16 @@
/* The standard SNMP domains. */
-extern oid netsnmpUDPDomain[]; /* = { 1, 3, 6, 1, 6, 1, 1 }; */
-extern oid netsnmpCLNSDomain[]; /* = { 1, 3, 6, 1, 6, 1, 2 }; */
-extern oid netsnmpCONSDomain[]; /* = { 1, 3, 6, 1, 6, 1, 3 }; */
-extern oid netsnmpDDPDomain[]; /* = { 1, 3, 6, 1, 6, 1, 4 }; */
-extern oid netsnmpIPXDomain[]; /* = { 1, 3, 6, 1, 6, 1, 5 }; */
-extern size_t netsnmpUDPDomain_len;
-extern size_t netsnmpCLNSDomain_len;
-extern size_t netsnmpCONSDomain_len;
-extern size_t netsnmpDDPDomain_len;
-extern size_t netsnmpIPXDomain_len;
+NETSNMP_IMPORT oid netsnmpUDPDomain[]; /* = { 1, 3, 6, 1, 6, 1, 1
}; */
+NETSNMP_IMPORT oid netsnmpCLNSDomain[]; /* = { 1, 3, 6, 1, 6, 1,
2 }; */
+NETSNMP_IMPORT oid netsnmpCONSDomain[]; /* = { 1, 3, 6, 1, 6, 1,
3 }; */
+NETSNMP_IMPORT oid netsnmpDDPDomain[]; /* = { 1, 3, 6, 1, 6, 1, 4
}; */
+NETSNMP_IMPORT oid netsnmpIPXDomain[]; /* = { 1, 3, 6, 1, 6, 1, 5
}; */
+NETSNMP_IMPORT size_t netsnmpUDPDomain_len;
+NETSNMP_IMPORT size_t netsnmpCLNSDomain_len;
+NETSNMP_IMPORT size_t netsnmpCONSDomain_len;
+NETSNMP_IMPORT size_t netsnmpDDPDomain_len;
+NETSNMP_IMPORT size_t netsnmpIPXDomain_len;
/* Structure which defines the transport-independent API. */
diff -ur net-snmp-5.4.pre4.fresh/include/net-snmp/library/transform_oids.h
net-snmp-5.4.pre4.dll/include/net-snmp/library/transform_oids.h
--- net-snmp-5.4.pre4.fresh/include/net-snmp/library/transform_oids.h Thu Sep
14 20:48:48 2006
+++ net-snmp-5.4.pre4.dll/include/net-snmp/library/transform_oids.h Wed Oct
25 10:02:24 2006
@@ -10,19 +10,19 @@
* Numeric MIB names for auth and priv transforms.
*/
-extern oid usmNoAuthProtocol[10]; /* == { 1,3,6,1,6,3,10,1,1,1 }; */
+NETSNMP_IMPORT oid usmNoAuthProtocol[10]; /* == { 1,3,6,1,6,3,10,1,1,1
}; */
#ifndef NETSNMP_DISABLE_MD5
-extern oid usmHMACMD5AuthProtocol[10]; /* == { 1,3,6,1,6,3,10,1,1,2
}; */
+NETSNMP_IMPORT oid usmHMACMD5AuthProtocol[10]; /* == {
1,3,6,1,6,3,10,1,1,2 }; */
#endif
-extern oid usmHMACSHA1AuthProtocol[10]; /* == { 1,3,6,1,6,3,10,1,1,3
}; */
-extern oid usmNoPrivProtocol[10]; /* == { 1,3,6,1,6,3,10,1,2,1 }; */
+NETSNMP_IMPORT oid usmHMACSHA1AuthProtocol[10]; /* == {
1,3,6,1,6,3,10,1,1,3 }; */
+NETSNMP_IMPORT oid usmNoPrivProtocol[10]; /* == { 1,3,6,1,6,3,10,1,2,1
}; */
#ifndef NETSNMP_DISABLE_DES
-extern oid usmDESPrivProtocol[10]; /* == { 1,3,6,1,6,3,10,1,2,2 }; */
+NETSNMP_IMPORT oid usmDESPrivProtocol[10]; /* == { 1,3,6,1,6,3,10,1,2,2
}; */
#endif
/* XXX: OIDs not defined yet */
-extern oid usmAESPrivProtocol[10]; /* == { 1,3,6,1,6,3,10,1,2,4 }; */
-extern oid *usmAES128PrivProtocol; /* backwards compat */
+NETSNMP_IMPORT oid usmAESPrivProtocol[10]; /* == { 1,3,6,1,6,3,10,1,2,4
}; */
+NETSNMP_IMPORT oid *usmAES128PrivProtocol; /* backwards compat */
#define USM_AUTH_PROTO_NOAUTH_LEN 10
#define USM_AUTH_PROTO_MD5_LEN 10
diff -ur net-snmp-5.4.pre4.fresh/win32/Makefile-apps.in
net-snmp-5.4.pre4.dll/win32/Makefile-apps.in
--- net-snmp-5.4.pre4.fresh/win32/Makefile-apps.in Fri Mar 12 14:29:26 2004
+++ net-snmp-5.4.pre4.dll/win32/Makefile-apps.in Wed Oct 25 08:22:02 2006
@@ -8,7 +8,7 @@
# Set to 1 to allow the building using the DLL version of SNMPLIB. This is
# NOT supported as this program is NOT thread safe and it WILL cause
# problems!
-ALLOW_DLL=0
+ALLOW_DLL=1
!IF "$(OS)" == "Windows_NT"
NULL=
diff -ur net-snmp-5.4.pre4.fresh/win32/build.pl
net-snmp-5.4.pre4.dll/win32/build.pl
--- net-snmp-5.4.pre4.fresh/win32/build.pl Tue Sep 6 20:06:32 2005
+++ net-snmp-5.4.pre4.dll/win32/build.pl Wed Oct 25 12:05:48 2006
@@ -17,6 +17,7 @@
my $debug = "disabled";
my $configOpts = "";
my $cTmp = "";
+my $linktype = "static";
# Prepend win32\ if running from main directory
my $current_pwd = `%COMSPEC% /c cd`;
@@ -50,7 +51,9 @@
print "8. Debug mode: " . $debug . "\n";
print "9. IPv6 transports: " . $b_ipv6 . "\n";
print "\n";
- print "10. Install development files " . $install_devel . "\n";
+ print "10. Link type: " . $linktype . "\n";
+ print "\n";
+ print "11. Install development files " . $install_devel . "\n";
print "\nF. Finished - start build\n";
print "Q. Quit - abort build\n\n";
print "Select option to set / toggle: ";
@@ -96,7 +99,7 @@
$install = "enabled";
}
}
- elsif ($option eq "10") {
+ elsif ($option eq "11") {
if ($install_devel eq "enabled") {
$install_devel = "disabled";
}
@@ -136,6 +139,14 @@
$debug = "enabled";
}
}
+ elsif ($option eq "10") {
+ if ($linktype eq "static") {
+ $linktype = "dynamic";
+ }
+ else {
+ $linktype = "static";
+ }
+ }
elsif (lc($option) eq "f") {
last;
}
@@ -186,7 +197,7 @@
system("del ..\\include\\net-snmp\\net-snmp-config.h > NUL: 2>&1");
print "Running Configure...\n";
- system("perl Configure $configOpts --linktype=static
--prefix=\"$install_base\" > configure.out 2>&1") == 0 || die "Build error (see
configure.out)";
+ system("perl Configure $configOpts --linktype=$linktype
--prefix=\"$install_base\" > configure.out 2>&1") == 0 || die "Build error (see
configure.out)";
print "Cleaning...\n";
system("nmake /nologo clean > clean.out 2>&1") == 0 || die "Build error (see
clean.out)";
@@ -195,14 +206,16 @@
system("nmake /nologo > make.out 2>&1") == 0 || die "Build error (see
make.out)";
if ($perl eq "enabled") {
- print "Running Configure for DLL...\n";
- system("perl Configure $configOpts --linktype=dynamic
--prefix=\"$install_base\" > perlconfigure.out 2>&1") == 0 || die "Build error
(see perlconfigure.out)";
-
- print "Cleaning libraries...\n";
- system("nmake /nologo libs_clean >> clean.out 2>&1") == 0 || die "Build
error (see clean.out)";
-
- print "Building DLL libraries...\n";
- system("nmake /nologo libs > dll.out 2>&1") == 0 || die "Build error (see
dll.out)";
+ if ($linktype eq "static") {
+ print "Running Configure for DLL...\n";
+ system("perl Configure $configOpts --linktype=dynamic
--prefix=\"$install_base\" > perlconfigure.out 2>&1") == 0 || die "Build error
(see perlconfigure.out)";
+
+ print "Cleaning libraries...\n";
+ system("nmake /nologo libs_clean >> clean.out 2>&1") == 0 || die "Build
error (see clean.out)";
+
+ print "Building DLL libraries...\n";
+ system("nmake /nologo libs > dll.out 2>&1") == 0 || die "Build error
(see dll.out)";
+ }
print "Cleaning Perl....\n";
system("nmake /nologo perl_clean >> clean.out 2>&1"); # If already
cleaned, Makefile is gone so don't worry about errors!
@@ -248,15 +261,17 @@
# Delete net-snmp-config.h from main include folder just in case it was
created by a Cygwin or MinGW build
system("del ..\\include\\net-snmp\\net-snmp-config.h > NUL: 2>&1");
- system("perl Configure $configOpts --linktype=static
--prefix=\"$install_base\"") == 0 || die "Build error (see above)";
+ system("perl Configure $configOpts --linktype=$linktype
--prefix=\"$install_base\"") == 0 || die "Build error (see above)";
system("nmake /nologo clean") == 0 || die "Build error (see above)";
system("nmake /nologo") == 0 || die "Build error (see above)";
if ($perl eq "enabled") {
- system("perl Configure $configOpts --linktype=dynamic
--prefix=\"$install_base\"") == 0 || die "Build error (see above)";
- system("nmake /nologo libs_clean") == 0 || die "Build error (see above)";
- system("nmake /nologo libs") == 0 || die "Build error (see above)";
-
+ if ($linktype eq "static") {
+ system("perl Configure $configOpts --linktype=dynamic
--prefix=\"$install_base\"") == 0 || die "Build error (see above)";
+ system("nmake /nologo libs_clean") == 0 || die "Build error (see above)";
+ system("nmake /nologo libs") == 0 || die "Build error (see above)";
+ }
+
system("nmake /nologo perl_clean"); # If already cleaned, Makefile is gone
so don't worry about errors!
system("nmake /nologo perl") == 0 || die "Build error (see above)";
diff -ur net-snmp-5.4.pre4.fresh/win32/libsnmp_dll/libsnmp.def
net-snmp-5.4.pre4.dll/win32/libsnmp_dll/libsnmp.def
--- net-snmp-5.4.pre4.fresh/win32/libsnmp_dll/libsnmp.def Thu Sep 21
12:15:44 2006
+++ net-snmp-5.4.pre4.dll/win32/libsnmp_dll/libsnmp.def Wed Oct 25 08:21:32 2006
@@ -430,6 +430,20 @@
snmp_add_full
netsnmp_transport_open_client
snmp_oidsubtree_compare
+ snmp_disable_syslog
+ snmp_stderrlog_status
+ sa_find_specific
+ check_rowstatus_transition
+ check_storage_transition
+ netsnmp_view_get
+ netsnmp_check_vb_rowstatus_value
+ netsnmp_check_vb_type_and_size
+ netsnmp_check_vb_type_and_max_size
+ read_config_save_objid
+ print_oid_report_enable_mibchildoid
+ netsnmp_query_walk
+ netsnmp_query_getnext
+ netsnmp_query_get
;IPv6 netsnmp_udp6_parse_security
;IPv6 netsnmp_udp6_getSecName
;IPv6 netsnmp_TCPIPv6Domain
diff -ur net-snmp-5.4.pre4.fresh/win32/libsnmp_dll/libsnmp.def.in
net-snmp-5.4.pre4.dll/win32/libsnmp_dll/libsnmp.def.in
--- net-snmp-5.4.pre4.fresh/win32/libsnmp_dll/libsnmp.def.in Thu Sep 21
12:15:44 2006
+++ net-snmp-5.4.pre4.dll/win32/libsnmp_dll/libsnmp.def.in Wed Oct 25
08:21:26 2006
@@ -430,6 +430,20 @@
snmp_add_full
netsnmp_transport_open_client
snmp_oidsubtree_compare
+ snmp_disable_syslog
+ snmp_stderrlog_status
+ sa_find_specific
+ check_rowstatus_transition
+ check_storage_transition
+ netsnmp_view_get
+ netsnmp_check_vb_rowstatus_value
+ netsnmp_check_vb_type_and_size
+ netsnmp_check_vb_type_and_max_size
+ read_config_save_objid
+ print_oid_report_enable_mibchildoid
+ netsnmp_query_walk
+ netsnmp_query_getnext
+ netsnmp_query_get
;IPv6 netsnmp_udp6_parse_security
;IPv6 netsnmp_udp6_getSecName
;IPv6 netsnmp_TCPIPv6Domain
diff -ur net-snmp-5.4.pre4.fresh/win32/snmpd/Makefile.in
net-snmp-5.4.pre4.dll/win32/snmpd/Makefile.in
--- net-snmp-5.4.pre4.fresh/win32/snmpd/Makefile.in Thu Apr 22 10:08:02 2004
+++ net-snmp-5.4.pre4.dll/win32/snmpd/Makefile.in Wed Oct 25 08:24:16 2006
@@ -8,7 +8,7 @@
# Set to 1 to allow the building using the DLL version of SNMPLIB. This is
# NOT supported as this program is NOT thread safe and it WILL cause
# problems!
-ALLOW_DLL=0
+ALLOW_DLL=1
!IF "$(OS)" == "Windows_NT"
NULL=
@@ -46,6 +46,10 @@
CPP=cl.exe
CPP_PROJ=/nologo /MD /W3 /GX /O2 /I "." /I ".." /I "..\..\snmplib" /I "..\.."
/I "..\..\include" /I "..\..\agent" /I "..\..\agent\mibgroup" /D "WIN32" /D
"NDEBUG" /D "_CONSOLE" /D "_MBCS" /Fp"$(INTDIR)\snmpd.pch" /YX /Fo"$(INTDIR)\\"
/Fd"$(INTDIR)\\" /FD /c
+!IF "$(LINKTYPE)" == "dynamic"
+CPP_PROJ=$(CPP_PROJ) /D "NMAKE_NETSNMP_USE_DLL"
+!ENDIF
+
.c{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
@@ -132,6 +136,10 @@
CPP=cl.exe
CPP_PROJ=/nologo /MDd /W3 /Gm /GX /Zi /Od /I "." /I ".." /I "..\..\snmplib" /I
"..\.." /I "..\..\include" /I "..\..\agent" /I "..\..\agent\mibgroup" /D
"WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /FR"$(INTDIR)\\"
/Fp"$(INTDIR)\snmpd.pch" /YX /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /c
+
+!IF "$(LINKTYPE)" == "dynamic"
+CPP_PROJ=$(CPP_PROJ) /D "NMAKE_NETSNMP_USE_DLL"
+!ENDIF
.c{$(INTDIR)}.obj::
$(CPP) @<<
diff -ur net-snmp-5.4.pre4.fresh/win32/snmpdsdk/Makefile.in
net-snmp-5.4.pre4.dll/win32/snmpdsdk/Makefile.in
--- net-snmp-5.4.pre4.fresh/win32/snmpdsdk/Makefile.in Thu Apr 22 10:08:04 2004
+++ net-snmp-5.4.pre4.dll/win32/snmpdsdk/Makefile.in Wed Oct 25 08:23:28 2006
@@ -8,7 +8,7 @@
# Set to 1 to allow the building using the DLL version of SNMPLIB. This is
# NOT supported as this program is NOT thread safe and it WILL cause
# problems!
-ALLOW_DLL=0
+ALLOW_DLL=1
!IF "$(OS)" == "Windows_NT"
NULL=
@@ -46,6 +46,10 @@
CPP=cl.exe
CPP_PROJ=/nologo /MD /W3 /GX /O2 /I "." /I ".." /I "..\..\snmplib" /I "..\.."
/I "..\..\include" /I "..\..\agent" /I "..\..\agent\mibgroup" /D "WIN32" /D
"NDEBUG" /D "_CONSOLE" /D "_MBCS" /D "HAVE_WIN32_PLATFORM_SDK"
/Fp"$(INTDIR)\snmpd.pch" /YX /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /c
+!IF "$(LINKTYPE)" == "dynamic"
+CPP_PROJ=$(CPP_PROJ) /D "NMAKE_NETSNMP_USE_DLL"
+!ENDIF
+
.c{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
@@ -132,6 +136,10 @@
CPP=cl.exe
CPP_PROJ=/nologo /MDd /W3 /Gm /GX /Zi /Od /I "." /I ".." /I "..\..\snmplib" /I
"..\.." /I "..\..\include" /I "..\..\agent" /I "..\..\agent\mibgroup" /D
"WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /D "HAVE_WIN32_PLATFORM_SDK"
/FR"$(INTDIR)\\" /Fp"$(INTDIR)\snmpd.pch" /YX /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\"
/FD /c
+
+!IF "$(LINKTYPE)" == "dynamic"
+CPP_PROJ=$(CPP_PROJ) /D "NMAKE_NETSNMP_USE_DLL"
+!ENDIF
.c{$(INTDIR)}.obj::
$(CPP) @<<
diff -ur net-snmp-5.4.pre4.fresh/win32/snmpnetstat/Makefile.in
net-snmp-5.4.pre4.dll/win32/snmpnetstat/Makefile.in
--- net-snmp-5.4.pre4.fresh/win32/snmpnetstat/Makefile.in Mon Nov 7
21:45:06 2005
+++ net-snmp-5.4.pre4.dll/win32/snmpnetstat/Makefile.in Wed Oct 25 08:23:12 2006
@@ -8,7 +8,7 @@
# Set to 1 to allow the building using the DLL version of SNMPLIB. This is
# NOT supported as this program is NOT thread safe and it WILL cause
# problems!
-ALLOW_DLL=0
+ALLOW_DLL=1
!IF "$(OS)" == "Windows_NT"
NULL=
@@ -48,6 +48,10 @@
CPP=cl.exe
CPP_PROJ=/nologo /MD /W3 /GX /O2 /I "." /I ".." /I "..\..\snmplib" /I "..\.."
/I "..\..\include" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS"
/Fp"$(INTDIR)\$(PROGNAME).pch" /YX /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /c
+!IF "$(LINKTYPE)" == "dynamic"
+CPP_PROJ=$(CPP_PROJ) /D "NMAKE_NETSNMP_USE_DLL"
+!ENDIF
+
.c{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
@@ -140,6 +144,10 @@
CPP=cl.exe
CPP_PROJ=/nologo /MDd /W3 /Gm /GX /Zi /Od /I "." /I ".." /I "..\..\snmplib" /I
"..\.." /I "..\..\include" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS"
/FR"$(INTDIR)\\" /Fp"$(INTDIR)\$(PROGNAME).pch" /YX /Fo"$(INTDIR)\\"
/Fd"$(INTDIR)\\" /FD /c
+
+!IF "$(LINKTYPE)" == "dynamic"
+CPP_PROJ=$(CPP_PROJ) /D "NMAKE_NETSNMP_USE_DLL"
+!ENDIF
.c{$(INTDIR)}.obj::
$(CPP) @<<
diff -ur net-snmp-5.4.pre4.fresh/win32/snmptrapd/Makefile.in
net-snmp-5.4.pre4.dll/win32/snmptrapd/Makefile.in
--- net-snmp-5.4.pre4.fresh/win32/snmptrapd/Makefile.in Mon Aug 1 07:39:06 2005
+++ net-snmp-5.4.pre4.dll/win32/snmptrapd/Makefile.in Wed Oct 25 08:22:38 2006
@@ -8,7 +8,7 @@
# Set to 1 to allow the building using the DLL version of SNMPLIB. This is
# NOT supported as this program is NOT thread safe and it WILL cause
# problems!
-ALLOW_DLL=0
+ALLOW_DLL=1
!IF "$(OS)" == "Windows_NT"
NULL=
@@ -44,6 +44,10 @@
CPP=cl.exe
CPP_PROJ=/nologo /MD /W3 /GX /O2 /I "." /I ".." /I "..\..\snmplib" /I "..\.."
/I "..\..\include" /I "..\..\agent\mibgroup" /D "WIN32" /D "NDEBUG" /D
"_CONSOLE" /D "_MBCS" /Fp"$(INTDIR)\$(PROGNAME).pch" /YX /Fo"$(INTDIR)\\"
/Fd"$(INTDIR)\\" /FD /c
+!IF "$(LINKTYPE)" == "dynamic"
+CPP_PROJ=$(CPP_PROJ) /D "NMAKE_NETSNMP_USE_DLL"
+!ENDIF
+
.c{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
@@ -124,6 +128,10 @@
CPP=cl.exe
CPP_PROJ=/nologo /MDd /W3 /Gm /GX /Zi /Od /I "." /I ".." /I "..\..\snmplib" /I
"..\.." /I "..\..\include" /I "..\..\agent\mibgroup" /D "WIN32" /D "_DEBUG" /D
"_CONSOLE" /D "_MBCS" /FR"$(INTDIR)\\" /Fp"$(INTDIR)\$(PROGNAME).pch" /YX
/Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /c
+
+!IF "$(LINKTYPE)" == "dynamic"
+CPP_PROJ=$(CPP_PROJ) /D "NMAKE_NETSNMP_USE_DLL"
+!ENDIF
.c{$(INTDIR)}.obj::
$(CPP) @<<
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Net-snmp-coders mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/net-snmp-coders