1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-28 01:58:17 +03:00

4285 Commits

Author SHA1 Message Date
Jelmer Vernooij
6efb7ff981 Fix various Python-related bugs. 2008-12-21 07:34:27 +01:00
Jelmer Vernooij
33ebc95591 Remove remaining fragments of SWIG code in pyldb. 2008-12-21 04:42:51 +01:00
Jelmer Vernooij
eeb25cf548 Fix more introduced regressions in new bindings. 2008-12-21 04:36:16 +01:00
Jelmer Vernooij
2e7a6cb6bf py: Fix initialisation of subtypes, fix segfaults. 2008-12-21 03:08:14 +01:00
Jelmer Vernooij
64419f47da Implement some of the stubs in misc python module. 2008-12-21 00:24:54 +01:00
Jelmer Vernooij
13fa639a29 Use plain C implementation for misc Python module rather than SWIG. 2008-12-20 23:38:30 +01:00
Jelmer Vernooij
0d585a67ed Support subtypes of ldb.Ldb. 2008-12-20 23:00:23 +01:00
Jelmer Vernooij
94ed43390c Fix all pyldb tests except for modules. 2008-12-20 22:21:39 +01:00
Jelmer Vernooij
759a3bcc88 Merge branch 'pyregistry' of git://git.samba.org/jelmer/samba
Conflicts:
	source4/lib/ldb/ldb_wrap.c
2008-12-19 23:55:45 +01:00
Jelmer Vernooij
0898b96d26 Reprocess LDB SWIG file. 2008-12-19 23:48:30 +01:00
Jelmer Vernooij
071a71e27f Specify explicit path to tevent.h, compilation breaks without it for me. 2008-12-19 22:03:11 +01:00
Jelmer Vernooij
5076c64d43 Merge branch 'master' of ssh://git.samba.org/data/git/samba 2008-12-19 21:47:45 +01:00
Jelmer Vernooij
6998ef4fe0 Avoid use of parentheses in Python import statements, as it's not supported by Python2.3. 2008-12-19 21:47:31 +01:00
Jelmer Vernooij
04bef7fe2a Fix more tests. 2008-12-19 16:08:35 +00:00
Simo Sorce
af049ae83c s4:cosmetic: Remove trailing tabs and spaces 2008-12-19 09:58:28 -05:00
Matthias Dieter Wallnöfer
dde0964d72 Small cosmetic LDB patch regarding return values.
It changes some "return 0" in "return LDB_SUCCESS"
2008-12-19 09:54:20 -05:00
Jelmer Vernooij
7f4e4df58d Port over more functionality to new SWIGless Python module. 2008-12-19 13:41:44 +00:00
Jelmer Vernooij
e0672ae29b Remove swig support from standalone ldb build. 2008-12-19 01:24:00 +00:00
Jelmer Vernooij
a57b1aa0f1 Initial work using manual Python bindings for LDB, rather than SWIG-generated ones. 2008-12-19 01:22:07 +00:00
Jelmer Vernooij
61a2d5c878 Use plain Python C API for registry module, rather than SWIG. 2008-12-18 16:49:33 +00:00
Jelmer Vernooij
d14c860465 Merge branch 'master' of ssh://git.samba.org/data/git/samba into pyregistry 2008-12-18 14:54:57 +00:00
Stefan Metzmacher
fc31f2c526 s4:lib/socket: socket_connect_send() and socket_connect_ev() should only wrok with addresses
metze
2008-12-18 13:32:51 +01:00
Andrew Bartlett
1a399db01c Parse options (and open the database) before starting transactions 2008-12-18 14:36:20 +11:00
Andrew Bartlett
a9cf61dbdd Print error strings when transactions fail in ldb tools 2008-12-18 14:36:20 +11:00
Andrew Bartlett
8deded43ba Rename ldb index pointer wrapper function
This also asserts that it is used only for index records.

Andrew Bartlett
2008-12-18 14:36:20 +11:00
Stefan Metzmacher
372f700f47 s4:lib/socket: we need to lookup the #20 netbios name when we connect to a remote server
metze
2008-12-17 19:12:24 +01:00
Stefan Metzmacher
03acd29128 s4:lib/socket: remove unused code
metze
2008-12-17 19:12:24 +01:00
Stefan Metzmacher
46eda79090 s4:lib/tevent: add lib/events/ compat and let things compile
metze
2008-12-17 13:31:29 +01:00
Stefan Metzmacher
504f8816e3 s4:lib/events: move to toplevel directory as lib/tevent/
This commit will not compile on its own.

metze
2008-12-17 13:31:28 +01:00
Stefan Metzmacher
081f8883ba s4: fix LIBEVENTS dependencies and use more forward declarations
We should only include events.h where we really need it
and prefer forward declarations of 'struct event_context'

metze
2008-12-17 11:04:45 +01:00
Andrew Bartlett
eb3714acfa s4:ldb: add some python tests for extended dns
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2008-12-17 12:29:29 +11:00
Andrew Bartlett
596fe759e1 s4:ldb: make it possible to return per entry controls
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2008-12-17 12:29:27 +11:00
Andrew Bartlett
408a752a63 s4:ldb-samba: register samba specific extended dn handlers
This provides the two extended DN handlers for the GUID and SID types,
and makes the parsing more strict (where possible, it uses
ndr_pull_struct_blob_all(), to cause an error if trailing data is
found).

Signed-off-by: Stefan Metzmacher <metze@samba.org>
2008-12-17 12:29:26 +11:00
Andrew Bartlett
ced158d250 s4:ldb.i: hang the dn on the NULL context as the python destructor will free it
This fixes a bug in the ldb.i python wrapper, that showed up under valgrind.

Signed-off-by: Stefan Metzmacher <metze@samba.org>
2008-12-17 12:29:25 +11:00
Andrew Bartlett
f7c53e0add s4:ldb: use try to print the extended dn in the ldif output
This allows searches with the extended DN control to still print the
extended DN in ldif output (it would otherwise be parsed and hidden in
the structure).

Signed-off-by: Stefan Metzmacher <metze@samba.org>
2008-12-17 12:29:25 +11:00
Andrew Bartlett
7a7573d570 s4:ldb_ildap: try to pass extended DNs to the server
Whenever we pass a DN to the LDAP server, we now use
ldb_dn_get_extended_linearized().  This allows us to send the extended
DN if set, and therefore allows searches of the form
'<GUID=aaa45ea0-94cd-45e9-8753-abe455d9a8f1>'.

We actually use the '0' format (GUID=aaa45ea094cd45e98753abe455d9a8f1)
because it is more widely supported (by Win2k in particular).

Signed-off-by: Stefan Metzmacher <metze@samba.org>
2008-12-17 12:29:24 +11:00
Andrew Bartlett
aa3eab70d5 s4:ldb: add infrastructure for extended dn handlers
This introduces a new set of pluggable syntax, for use on the
extended DN, and uses them when parsing the DN.

If the DN appears to be in the extended form, we no longer return the
full DN 'as is', but only return the normal part from
ldb_dn_get_linearized().

When validating/parsing the DN we validate not only the format of the
DN, but also the contents of the GUID or SID (to ensure they are
plausable).

We also have functions to set and get the extended components on the DN.

For now, extended_dn_get_linearized() returns a newly constructed and
allocated string each time.

Signed-off-by: Stefan Metzmacher <metze@samba.org>
2008-12-17 12:29:23 +11:00
Jelmer Vernooij
0c0b9c738f Start converting registry python module to plain C rather than SWIG. 2008-12-16 21:51:01 +01:00
Andrew Tridgell
1b3a084d60 Merge branch 'master' of ssh://git.samba.org/data/git/samba 2008-12-17 07:17:54 +11:00
Andrew Tridgell
e294c4799b an experimental patch for fixing ldb bloat
ldb indexing can cause huge files, and huge memory usage. This
experiment allows us to keep indexes in memory during a transaction,
then to write the indexes to disk when the transaction completes. The
result is that the db is much smaller (we have seen improvements of
about 100x in file size) and memory usage during large transactions is
also greatly reduced

Note that this patch uses the unusual strategy of putting pointers
into a ldb (and thus into a tdb). This works because the pointers are
only there during a transaction, so the pointers are not exposed to
any other users of the database. The pointers allow us to avoid some
really bad allocation problems with tdb record allocation during the
re-indexing.
2008-12-17 07:15:29 +11:00
Jelmer Vernooij
5317dd50c0 Add new script for building IDL files in librpc/idl, generating both
Samba 3 and Samba 4 output.
2008-12-16 16:32:18 +01:00
Jelmer Vernooij
a7109b183b Merge branch 'master' of ssh://git.samba.org/data/git/samba 2008-12-16 15:36:53 +01:00
Jelmer Vernooij
0f04beff33 Rename dom_sid.idl -> server_id.idl (since it no longer actually contains the dom_sid). No longer include it from security.idl. 2008-12-16 15:36:18 +01:00
Andrew Tridgell
4380a374c1 repack the ldb after re-indexing
re-indexing in ldb is triggered on any modification to the @ATTRIBUTES
or @INDEXLIST records. This happens to produce a worst-case
fragmentation of the database, as all @INDEX records are deleted then
re-created. By repacking after re-indexing we ensure that the database
ends up without extreme fragmentation.
2008-12-16 14:41:21 +11:00
Andrew Tridgell
f320e3a659 use transactions in ldbadd, ldbmodify and ldbedit
The command line tools ldbadd, ldbmodify and ldbedit should operate
within a transaction to make them more efficient. The ldbadd tool in
particular is much faster when adding a large number of records if all
the adds happen within a transaction. Previously there was a
transaction per record.
2008-12-16 14:39:42 +11:00
Andrew Tridgell
a226d86dce Merge branch 'master' of ssh://git.samba.org/data/git/samba 2008-12-03 17:47:39 +11:00
Andrew Bartlett
16a3a2da78 Remove timeout event once we are calling the callback.
(Even if the callback takes some time, this isn't a ldb_tdb timeout
any more)

Andrew Bartlett
2008-11-17 10:07:24 +11:00
Andrew Bartlett
5b796adb12 Print unconvertable ldb element values as base64.
If an LDB element cannot be converted into a printable form, we should
still print it, just with safety applied.

Andrew Bartlett
2008-11-17 10:06:58 +11:00
Andrew Bartlett
9abd45979e Always validate a DN when constructing from a string in python 2008-11-17 10:05:37 +11:00
Stefan Metzmacher
1290b1d3d3 s4:librpc/ndr: integrate NDR_MISC into LIBNDR
metze
2008-11-16 16:24:34 +01:00