diff options
Diffstat (limited to 'source4/lib')
-rw-r--r-- | source4/lib/replace/libreplace.m4 | 3 | ||||
-rw-r--r-- | source4/lib/replace/win32.m4 | 8 | ||||
-rw-r--r-- | source4/lib/tdb/tdb.i | 4 | ||||
-rw-r--r-- | source4/lib/tdb/tdb.py | 14 | ||||
-rw-r--r-- | source4/lib/tdb/tdb_wrap.c | 10 | ||||
-rw-r--r-- | source4/lib/tls/config.m4 | 61 |
6 files changed, 68 insertions, 32 deletions
diff --git a/source4/lib/replace/libreplace.m4 b/source4/lib/replace/libreplace.m4 index 6a85ff5a82..71fa041672 100644 --- a/source4/lib/replace/libreplace.m4 +++ b/source4/lib/replace/libreplace.m4 @@ -299,4 +299,5 @@ m4_include(libreplace_cc.m4) m4_include(libreplace_ld.m4) m4_include(libreplace_network.m4) m4_include(libreplace_macros.m4) -m4_include(autoconf-2.60.m4) + +m4_ifndef([AC_USE_SYSTEM_EXTENSIONS],[m4_include(autoconf-2.60.m4)]) diff --git a/source4/lib/replace/win32.m4 b/source4/lib/replace/win32.m4 index 9ac84cdf2a..eb364e2cb9 100644 --- a/source4/lib/replace/win32.m4 +++ b/source4/lib/replace/win32.m4 @@ -2,7 +2,7 @@ AC_CHECK_HEADERS(direct.h windows.h winsock2.h ws2tcpip.h) ####################################### # Check for mkdir mode -AC_CACHE_CHECK( [whether mkdir supports mode], ac_mkdir_has_mode, +AC_CACHE_CHECK( [whether mkdir supports mode], libreplace_cv_mkdir_has_mode, AC_TRY_COMPILE([ #include <stdio.h> #ifdef HAVE_DIRECT_H @@ -11,10 +11,10 @@ AC_CACHE_CHECK( [whether mkdir supports mode], ac_mkdir_has_mode, mkdir("foo",0777); return 0; ], - ac_mkdir_has_mode="yes", - ac_mkdir_has_mode="no") ) + libreplace_cv_mkdir_has_mode="yes", + libreplace_cv_mkdir_has_mode="no") ) -if test "$ac_mkdir_has_mode" = "yes" +if test "$libreplace_cv_mkdir_has_mode" = "yes" then AC_DEFINE(HAVE_MKDIR_MODE, 1, [Define if target mkdir supports mode option]) fi diff --git a/source4/lib/tdb/tdb.i b/source4/lib/tdb/tdb.i index 5f23568170..3d8b697732 100644 --- a/source4/lib/tdb/tdb.i +++ b/source4/lib/tdb/tdb.i @@ -160,6 +160,8 @@ typedef struct tdb_context { tdb(const char *name, int hash_size, int tdb_flags, int flags, mode_t mode) { return tdb_open(name, hash_size, tdb_flags, flags, mode); } + %feature("docstring") error "S.error() -> int\n" + "Find last error number returned by operation on this TDB."; enum TDB_ERROR error(); ~tdb() { tdb_close($self); } %feature("docstring") close "S.close() -> None\n" @@ -179,6 +181,8 @@ typedef struct tdb_context { %feature("docstring") store "S.store(key, value, flag=TDB_REPLACE) -> None\n" "Store an entry."; int store(TDB_DATA key, TDB_DATA dbuf, int flag); + %feature("docstring") exists "S.exists(key) -> bool\n" + "Check whether key exists in this database."; int exists(TDB_DATA key); %feature("docstring") firstkey "S.firstkey() -> data\n" "Return the first key in this database."; diff --git a/source4/lib/tdb/tdb.py b/source4/lib/tdb/tdb.py index a8c1d06e0d..9f306bab8c 100644 --- a/source4/lib/tdb/tdb.py +++ b/source4/lib/tdb/tdb.py @@ -92,6 +92,13 @@ class Tdb(object): Open a TDB file. """ _tdb.Tdb_swiginit(self,_tdb.new_Tdb(*args, **kwargs)) + def error(*args, **kwargs): + """ + S.error() -> int + Find last error number returned by operation on this TDB. + """ + return _tdb.Tdb_error(*args, **kwargs) + __swig_destroy__ = _tdb.delete_Tdb def close(*args, **kwargs): """ @@ -128,6 +135,13 @@ class Tdb(object): """ return _tdb.Tdb_store(*args, **kwargs) + def exists(*args, **kwargs): + """ + S.exists(key) -> bool + Check whether key exists in this database. + """ + return _tdb.Tdb_exists(*args, **kwargs) + def firstkey(*args, **kwargs): """ S.firstkey() -> data diff --git a/source4/lib/tdb/tdb_wrap.c b/source4/lib/tdb/tdb_wrap.c index 27da552d33..32665d79fd 100644 --- a/source4/lib/tdb/tdb_wrap.c +++ b/source4/lib/tdb/tdb_wrap.c @@ -3628,7 +3628,10 @@ static PyMethodDef SwigMethods[] = { "S.__init__(name,hash_size=0,tdb_flags=TDB_DEFAULT,flags=O_RDWR,mode=0600)\n" "Open a TDB file.\n" ""}, - { (char *)"Tdb_error", (PyCFunction)_wrap_Tdb_error, METH_O, NULL}, + { (char *)"Tdb_error", (PyCFunction)_wrap_Tdb_error, METH_O, (char *)"\n" + "S.error() -> int\n" + "Find last error number returned by operation on this TDB.\n" + ""}, { (char *)"delete_Tdb", (PyCFunction)_wrap_delete_Tdb, METH_O, NULL}, { (char *)"Tdb_close", (PyCFunction)_wrap_Tdb_close, METH_O, (char *)"\n" "S.close() -> None\n" @@ -3651,7 +3654,10 @@ static PyMethodDef SwigMethods[] = { "S.store(key, value, flag=TDB_REPLACE) -> None\n" "Store an entry.\n" ""}, - { (char *)"Tdb_exists", (PyCFunction) _wrap_Tdb_exists, METH_VARARGS | METH_KEYWORDS, NULL}, + { (char *)"Tdb_exists", (PyCFunction) _wrap_Tdb_exists, METH_VARARGS | METH_KEYWORDS, (char *)"\n" + "S.exists(key) -> bool\n" + "Check whether key exists in this database.\n" + ""}, { (char *)"Tdb_firstkey", (PyCFunction)_wrap_Tdb_firstkey, METH_O, (char *)"\n" "S.firstkey() -> data\n" "Return the first key in this database.\n" diff --git a/source4/lib/tls/config.m4 b/source4/lib/tls/config.m4 index 8b6ad7dcbc..2af9192cca 100644 --- a/source4/lib/tls/config.m4 +++ b/source4/lib/tls/config.m4 @@ -1,33 +1,44 @@ ############################### # start SMB_EXT_LIB_GNUTLS # check for gnutls/gnutls.h and -lgnutls -SMB_EXT_LIB_FROM_PKGCONFIG(GNUTLS, gnutls, - [SMB_ENABLE_GNUTLS=YES], - [SMB_ENABLE_GNUTLS=NO]) -if test x$SMB_ENABLE_GNUTLS = xNO; then - AC_CHECK_HEADERS(gnutls/gnutls.h) - AC_CHECK_LIB_EXT(gnutls, GNUTLS_LIBS, gnutls_global_init) - AC_CHECK_DECL(gnutls_x509_crt_set_version, - [AC_DEFINE(HAVE_GNUTLS_X509_CRT_SET_VERSION,1,gnutls set_version)], [], [ - #include <gnutls/gnutls.h> - #include <gnutls/x509.h> - ]) - if test x"$ac_cv_header_gnutls_gnutls_h" = x"yes" -a x"$ac_cv_lib_ext_gnutls_gnutls_global_init" = x"yes" -a x"$ac_cv_have_decl_gnutls_x509_crt_set_version" = x"yes";then - SMB_ENABLE(GNUTLS,YES) - AC_CHECK_DECL(gnutls_x509_crt_set_subject_key_id, - [AC_DEFINE(HAVE_GNUTLS_X509_CRT_SET_SUBJECT_KEY_ID,1,gnutls subject_key)], [], [ - #include <gnutls/gnutls.h> - #include <gnutls/x509.h> - ]) +use_gnutls=yes +AC_ARG_ENABLE(gnutls, +[ --enable-gnutls Turn on gnutls support (default=yes)], + [if test x$enable_gnutls = xno; then + use_gnutls=no + fi]) + + +if test x$use_gnutls = xyes; then + SMB_EXT_LIB_FROM_PKGCONFIG(GNUTLS, gnutls, + [SMB_ENABLE_GNUTLS=YES], + [SMB_ENABLE_GNUTLS=NO]) + + if test x$SMB_ENABLE_GNUTLS = xNO; then + AC_CHECK_HEADERS(gnutls/gnutls.h) + AC_CHECK_LIB_EXT(gnutls, GNUTLS_LIBS, gnutls_global_init) + AC_CHECK_DECL(gnutls_x509_crt_set_version, + [AC_DEFINE(HAVE_GNUTLS_X509_CRT_SET_VERSION,1,gnutls set_version)], [], [ + #include <gnutls/gnutls.h> + #include <gnutls/x509.h> + ]) + if test x"$ac_cv_header_gnutls_gnutls_h" = x"yes" -a x"$ac_cv_lib_ext_gnutls_gnutls_global_init" = x"yes" -a x"$ac_cv_have_decl_gnutls_x509_crt_set_version" = x"yes";then + SMB_ENABLE(GNUTLS,YES) + AC_CHECK_DECL(gnutls_x509_crt_set_subject_key_id, + [AC_DEFINE(HAVE_GNUTLS_X509_CRT_SET_SUBJECT_KEY_ID,1,gnutls subject_key)], [], [ + #include <gnutls/gnutls.h> + #include <gnutls/x509.h> + ]) + fi + SMB_EXT_LIB(GNUTLS, $GNUTLS_LIBS) + fi + if test x$SMB_ENABLE_GNUTLS = xYES; then + #Some older versions have a different type name + AC_CHECK_TYPES([gnutls_datum],,,[#include "gnutls/gnutls.h"]) + AC_CHECK_TYPES([gnutls_datum_t],,,[#include "gnutls/gnutls.h"]) + AC_DEFINE(ENABLE_GNUTLS,1,[Whether we have gnutls support (SSL)]) fi - SMB_EXT_LIB(GNUTLS, $GNUTLS_LIBS) -fi -if test x$SMB_ENABLE_GNUTLS = xYES; then - #Some older versions have a different type name - AC_CHECK_TYPES([gnutls_datum],,,[#include "gnutls/gnutls.h"]) - AC_CHECK_TYPES([gnutls_datum_t],,,[#include "gnutls/gnutls.h"]) - AC_DEFINE(ENABLE_GNUTLS,1,[Whether we have gnutls support (SSL)]) fi # end SMB_EXT_LIB_GNUTLS ############################### |