diff options
Diffstat (limited to 'auth-ldap-2.0.3-gnustep.patch')
-rw-r--r-- | auth-ldap-2.0.3-gnustep.patch | 201 |
1 files changed, 0 insertions, 201 deletions
diff --git a/auth-ldap-2.0.3-gnustep.patch b/auth-ldap-2.0.3-gnustep.patch deleted file mode 100644 index 970060f99377..000000000000 --- a/auth-ldap-2.0.3-gnustep.patch +++ /dev/null @@ -1,201 +0,0 @@ -Index: aclocal.m4 -=================================================================== ---- aclocal.m4 (revision 1378) -+++ aclocal.m4 (working copy) -@@ -1,4 +1,3 @@ --builtin(include,objc.m4) - builtin(include,pthread.m4) - builtin(include,platform.m4) - builtin(include,check.m4) -@@ -23,7 +22,7 @@ - # Result is cached. - # - # Defines one of the following preprocessor macros: --# APPLE_RUNTIME GNU_RUNTIME -+# APPLE_RUNTIME GNU_RUNTIME MODERN_RUNTIME - # - # Substitutes the following variables: - # OBJC_RUNTIME OBJC_RUNTIME_FLAGS OBJC_LIBS -@@ -31,7 +30,7 @@ - #------------------------------------------------------------------------ - AC_DEFUN([OD_OBJC_RUNTIME],[ - AC_REQUIRE([AC_PROG_OBJC]) -- AC_ARG_WITH(objc-runtime, AC_HELP_STRING([--with-objc-runtime], [Specify either "GNU" or "apple"]), [with_objc_runtime=${withval}]) -+ AC_ARG_WITH(objc-runtime, AC_HELP_STRING([--with-objc-runtime], [Specify either "GNU", "apple", or "modern"]), [with_objc_runtime=${withval}]) - - if test x"${with_objc_runtime}" != x; then - case "${with_objc_runtime}" in -@@ -39,8 +38,10 @@ - ;; - apple) - ;; -+ modern) -+ ;; - *) -- AC_MSG_ERROR([${with_objc_runtime} is not a valid argument to --with-objc-runtime. Please specify either "GNU" or "apple"]) -+ AC_MSG_ERROR([${with_objc_runtime} is not a valid argument to --with-objc-runtime. Please specify either "GNU", "apple", or "modern"]) - ;; - esac - fi -@@ -174,6 +175,33 @@ - od_cv_objc_runtime_gnu="no" - fi - -+ if test x"${with_objc_runtime}" = x || test x"${with_objc_runtime}" = x"modern"; then -+ AC_MSG_CHECKING([for Modern Objective C runtime]) -+ AC_CACHE_VAL(od_cv_objc_runtime_modern, [ -+ # The following uses quadrigraphs -+ # '@<:@' = '[' -+ # '@:>@' = ']' -+ AC_LINK_IFELSE([ -+ AC_LANG_PROGRAM([ -+ #include <objc/objc.h> -+ #include <objc/runtime.h> -+ ], [ -+ id class = objc_lookUpClass("NSObject"); -+ id obj = @<:@class alloc@:>@; -+ puts(@<:@obj name@:>@); -+ ]) -+ ], [ -+ od_cv_objc_runtime_modern="yes" -+ ], [ -+ od_cv_objc_runtime_modern="no" -+ ] -+ ) -+ ]) -+ AC_MSG_RESULT(${od_cv_objc_runtime_modern}) -+ else -+ od_cv_objc_runtime_modern="no" -+ fi -+ - # Apple runtime is prefered - if test x"${od_cv_objc_runtime_apple}" = x"yes"; then - OBJC_RUNTIME="APPLE_RUNTIME" -@@ -185,6 +213,16 @@ - OBJC_RUNTIME_FLAGS="-fgnu-runtime" - AC_MSG_NOTICE([Using GNU Objective-C runtime]) - AC_DEFINE([GNU_RUNTIME], 1, [Define if using the GNU Objective-C runtime and compiler.]) -+ elif test x"${od_cv_objc_runtime_modern}" = x"yes"; then -+ OBJC_RUNTIME="MODERN_RUNTIME" -+ case "${target_os}" in -+ linux*) OBJC_RUNTIME_FLAGS="-fgnu-runtime" -+ OBJC_LIBS="-lgnustep-base ${OBJC_LIBS}";; -+ darwin*) OBJC_RUNTIME_FLAGS="-fnext-runtime" -+ LDFLAGS="-framework Foundation ${LDFLAGS}";; -+ esac -+ AC_MSG_NOTICE([Using Modern Objective-C runtime]) -+ AC_DEFINE([MODERN_RUNTIME], 1, [Define if using the Modern Objective-C runtime and compiler.]) - else - AC_MSG_FAILURE([Could not locate a working Objective-C runtime.]) - fi -Index: src/TRObject.h -=================================================================== ---- src/TRObject.h (revision 1378) -+++ src/TRObject.h (working copy) -@@ -40,7 +40,11 @@ - #endif - - #include <stdbool.h> -+#ifdef MODERN_RUNTIME -+#include <Foundation/NSObject.h> -+#else - #include <objc/Object.h> -+#endif - - #include "auth-ldap.h" - -@@ -54,7 +58,11 @@ - @end - - -+#ifdef MODERN_RUNTIME -+@interface TRObject : NSObject <TRObject> { -+#else - @interface TRObject : Object <TRObject> { -+#endif - unsigned int _refCount; - } - -Index: src/TRObject.m -=================================================================== ---- src/TRObject.m (revision 1378) -+++ src/TRObject.m (working copy) -@@ -53,9 +53,11 @@ - * Additionally, we implement brain-dead, non-thread-safe - * reference counting. - */ -+#ifndef MODERN_RUNTIME - @interface Object (AppleAddedAReallyStupidGCCWarning) - - (void) dealloc; - @end -+#endif - - @implementation TRObject - -@@ -69,7 +71,11 @@ - } - - - (void) dealloc { -+#ifdef MODERN_RUNTIME -+ [super dealloc]; -+#else - [super free]; -+#endif - - /* Make Apple's objc compiler be quiet */ - if (false) -Index: src/auth-ldap.m -=================================================================== ---- src/auth-ldap.m (revision 1378) -+++ src/auth-ldap.m (working copy) -@@ -48,6 +48,9 @@ - #include <TRPacketFilter.h> - #include <TRPFAddress.h> - #include <TRLog.h> -+#ifdef MODERN_RUNTIME -+#include <Foundation/NSAutoreleasePool.h> -+#endif - - /* Plugin Context */ - typedef struct ldap_ctx { -@@ -267,7 +270,6 @@ - } - #endif - -- - *type = OPENVPN_PLUGIN_MASK(OPENVPN_PLUGIN_AUTH_USER_PASS_VERIFY) | - OPENVPN_PLUGIN_MASK(OPENVPN_PLUGIN_CLIENT_CONNECT) | - OPENVPN_PLUGIN_MASK(OPENVPN_PLUGIN_CLIENT_DISCONNECT); -@@ -550,6 +552,10 @@ - TRLDAPEntry *ldapUser = nil; - int ret = OPENVPN_PLUGIN_FUNC_ERROR; - -+#ifdef MODERN_RUNTIME -+ NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; -+#endif -+ - username = get_env("username", envp); - password = get_env("password", envp); - remoteAddress = get_env("ifconfig_pool_remote_ip", envp); -@@ -613,5 +619,8 @@ - [ldapUser release]; - if (ldap) - [ldap release]; -+#ifdef MODERN_RUNTIME -+ [pool drain]; -+#endif - return (ret); - } -Index: tests/Makefile.in -=================================================================== ---- tests/Makefile.in (revision 1378) -+++ tests/Makefile.in (working copy) -@@ -26,7 +26,7 @@ - CFLAGS+= @CHECK_CFLAGS@ -DTEST_DATA=\"${srcdir}/data\" - OBJCFLAGS+= @CHECK_CFLAGS@ -DTEST_DATA=\"${srcdir}/data\" - LIBS+= -lauth-ldap-testing $(OBJC_LIBS) $(LDAP_LIBS) @CHECK_LIBS@ --LDFLAGS+= -L${top_builddir}src $(LIBS) -+LDFLAGS+= -L${top_builddir}/src $(LIBS) - - # Recompile the tests every time - all: tests |