1
0
mirror of https://github.com/samba-team/samba.git synced 2025-11-26 04:23:49 +03:00
Commit Graph

47 Commits

Author SHA1 Message Date
Tim Potter
12e037dbe3 r3410: Handle conversion of DATA_BLOBs and pointers to DATA_BLOBs from python. 2007-10-10 13:05:06 -05:00
Tim Potter
deaa5159f4 r3406: Don't throw a werror exception for WERR_NO_MORE_ITEMS and WERR_MORE_DATA. 2007-10-10 13:05:06 -05:00
Tim Potter
ee535b6801 r3303: Call pull function for correct type instead of spoolss_PrinterInfo when
unmarshalling arrays.
2007-10-10 13:04:51 -05:00
Andrew Tridgell
4aab2cb210 r3282: some C pre-processors don't like expressions like
uuid(1ff70682-0a51-30e8-076d-740be8cee98b) so we now accept
uuid("1ff70682-0a51-30e8-076d-740be8cee98b") in pidl, and
automagically add quotes only if needed
2007-10-10 13:04:49 -05:00
Tim Potter
f490cd719c r3204: Got unpacking of an array of PrinterInfo union elements working. Phew. 2007-10-10 13:04:40 -05:00
Tim Potter
9045645ddf r3022: Work on unmarshalling arrays of structs in a buffer (Python string) for
spoolss.  Doesn't quite work yet.
2007-10-10 12:59:59 -05:00
Tim Potter
89da7a9196 r3009: Fix up unmarshall functions to return Python dict instead of a NTSTATUS.
We can now unmarshall a single printer returned from an EnumPrinters.
2007-10-10 12:59:56 -05:00
Tim Potter
4bc497a299 r3001: Expose unmarshalling functions for structures marked "public" in the
idl.  This allows us to pass a buffer of bytes returned from a spoolss
call and convert it to a Python dictionary.  Works for enumprinters level
1!
2007-10-10 12:59:56 -05:00
Tim Potter
558076cc8d r2994: More cleanups. Move the generation of NTSTATUS and WERROR exceptions
from inside a swig %exception block and into the argout typemap.  This
will allow us to wrap functions that don't require exception handling, and
also get rid of some ugly code in dcerpc.i
2007-10-10 12:59:55 -05:00
Tim Potter
e6756e3ee0 r2986: Add correct value to dict when generating wrapper for functions that
return WERROR values.

Clean up WERROR vs NTSTATUS handling a bit.
2007-10-10 12:59:54 -05:00
Tim Potter
15f8f73f8b r2966: Handle conversion of DATA_BLOB fields from Python in a slightly nicer
manner.  I'm hoping to get rid of DATA_BLOB's but for the moment they
make it easy to get some spoolss action happening quickly.
2007-10-10 12:59:52 -05:00
Tim Potter
6a47a079c0 r2963: Handle structures that contain more than one union as members. 2007-10-10 12:59:52 -05:00
Tim Potter
8c9c94d578 r2962: Tweak to get conversion function for pointers to union compiling again. 2007-10-10 12:59:52 -05:00
Andrew Tridgell
2f1e9954e3 r2958: the warnings from the swig code in pidl were totally swamping valid
warnings, making real errors impossible to spot.

this fixes the warnings, and probably fixes some pidl/python bugs as
well.
2007-10-10 12:59:51 -05:00
Tim Potter
5fd3c12d4f r2805: Handle NULL pointers when converting structures to Python. All the
test cases up till now haven't come across them yet!
2007-10-10 12:59:36 -05:00
Tim Potter
b63a0ef0d4 r2767: Get rid of some unnecessary %s formatting. 2007-10-10 12:59:31 -05:00
Tim Potter
c4c748ce63 r2764: Use hand-written function for all occurrences of IDL strings, not just
those with a single pointer.
2007-10-10 12:59:31 -05:00
Tim Potter
3170f6ed84 r2560: Don't require structure fields that have the pidl value() property
to be set.  They can be if you want, but will be overwritten by the
pidl push code.
2007-10-10 12:59:06 -05:00
Tim Potter
a2ab6c5ef9 r2496: Check that reference parameters are not None. 2007-10-10 12:58:58 -05:00
Tim Potter
f250203a5f r2491: Handle pointers to scalars when converting to a Python dictionary (i.e
resume handles).

Remove some now unused debugging code.
2007-10-10 12:58:57 -05:00
Tim Potter
4ddcae90a2 r2490: Some changes to take into account non-error NTSTATUS codes being returned:
- Only throw an exception if NT_STATUS_IS_ERR() instead of
    !NT_STATUS_IS_OK().

  - Add the NTSTATUS value to the returned dictionary under a key of
    'result' so calling functions can access it.
2007-10-10 12:58:57 -05:00
Tim Potter
46b3d4cfd8 r2428: Handle unions as [out] parameters by passing the value of the switch_is
parameter down to the various conversion functions.
2007-10-10 12:58:51 -05:00
Tim Potter
a17aaadb7d r2426: Handle pointer to scalars converting C to Python.
Peeked at parser.pm for some hints at getting array lengths right
when the length_is property is present.
2007-10-10 12:58:51 -05:00
Tim Potter
bcee386055 r2425: Found another place for a type check. When convert a dictionary value
to an array, check that the value exists and it is of list type.

Fix a typo.
2007-10-10 12:58:51 -05:00
Tim Potter
aaef6eaf6e r2424: Refactor handling of non-OK NTSTATUS returns to be more swiggish. 2007-10-10 12:58:51 -05:00
Tim Potter
9ea5574bb1 r2422: Convert PyDict_{Get,Set}Item() calls to PyDict_{Get,Set}ItemString(). 2007-10-10 12:58:50 -05:00
Tim Potter
e135265d1d r2418: Handle a pointer to a scalar when converting a field from Python.
Handle a pointer to an array of structures when converting to Python.
2007-10-10 12:58:50 -05:00
Tim Potter
36320c6941 r2417: Add comments to the interface generator as well as some commentary in
the generated interface code.

Get rid of global variables within the perl generator code.
2007-10-10 12:58:50 -05:00
Tim Potter
fc5443af9c r2416: More argument checks. Raise an exception instead of segfaulting if a
dictionary does not contain a required key.
2007-10-10 12:58:50 -05:00
Tim Potter
0f58ffb142 r2415: Throw a TypeError exception if a scalar value doesn't have the correct
type, or the argument to a to_python function isn't a dictionary.
2007-10-10 12:58:50 -05:00
Tim Potter
9bc55de42a r2411: The other half of getting autogenerated code working using misc.idl:
use Python lists for arrays when marshaling and unmarshaling arrays.
This gets samr_SetSecurity() working.
2007-10-10 12:58:49 -05:00
Tim Potter
810bce2fe5 r2409: Convert NULL pointers to Py_None, and vice versa.
This gets samr_QuerySecurity() working again.
2007-10-10 12:58:49 -05:00
Tim Potter
160dc90921 r2408: Tridge suggested that all the structures from misc.idl (policy handles,
sids, security descriptors and acls) can be automatically generated
instead of hand-written.  Fix up the swig wrapper generator and helper
routines to do this.  (Only works for policy handles right now though and
arrays are to be converted into lists instead of being binary blobs).

Fix up wrapper generation for modules that don't define an interface
(e.g misc.idl).
2007-10-10 12:58:49 -05:00
Tim Potter
f88996540c r2398: Import Data::Dumper module safely so it doesn't hurt the build farm. 2007-10-10 12:58:47 -05:00
Tim Potter
945a468105 r2359: More consistency fixes: pass a talloc context to every function that
doesn't convert scalar types, more renaming of function names.

Implement conversion fns for dom_sid, dom_sid2 (to struct version stubbed
out).  Also from Python conversions for security_acl and security_descriptors.
2007-10-10 12:58:46 -05:00
Tim Potter
84513e4ed1 r2358: More renaming of functions to keep things consistent. 2007-10-10 12:58:46 -05:00
Tim Potter
30f068164a r2336: Add another conversion function to allow union arms that contain structures
not pointers to structures.  Do some renaming of hand-written functions
as a result.

Include lsa interface before samr interface as samr depends on some lsa
structures.

Build up a nice hashed index of interfaces, functions, structs and
unions.

Add test for samr_Connect5() function which contains a union.
2007-10-10 12:58:44 -05:00
Tim Potter
f8a14e808e r2335: Zero function parameter struct so we can do a bit more testing. To be removed later.
Generate more stub code for union arms.
2007-10-10 12:58:44 -05:00
Tim Potter
a06727b792 r2325: Generate conversion stubs for IDL unions. 2007-10-10 12:58:44 -05:00
Tim Potter
8072d7f1a4 r2323: More tweaks to get things building again.
Now to get unions working as they are currently broken.
2007-10-10 12:58:44 -05:00
Tim Potter
c1dc984268 r2322: More renames of autogenerated functions so they all have approximately
the same signature.

Start to handle structures with no pointers.
2007-10-10 12:58:43 -05:00
Tim Potter
ec23bae00f r2298: Convert to and from string parameters.
Correct function name used when generating function to convert in
typemap so it is consistent with the others.
2007-10-10 12:58:41 -05:00
Tim Potter
d31d23b944 r2295: Convert simple scalar types and policy handles between dcerpc function
call request and response structures.
2007-10-10 12:58:40 -05:00
Tim Potter
e4729949c6 r2289: Autogenerate some more attractive looking stubs for converting
function argument structures and idl structures to and from Python
dictionaries.
2007-10-10 12:58:40 -05:00
Tim Potter
69710bbcb8 r2277: Generate stubs for input and output typemaps. 2007-10-10 12:58:37 -05:00
Tim Potter
55bd2dc02d r2256: Include autogenerated interfaces for lsa and samr pipes. Typemaps are currently
not working though.
2007-10-10 12:58:35 -05:00
Tim Potter
fd31ae38df r2253: Add test program, as small example of what's going on. 2007-10-10 12:58:35 -05:00