David Disseldorp
b8a8870d27
idl: add to_null property
...
to_null specifies that character conversion should only occur until the
null pointer in an array based string.
Signed-off-by: Jeremy Allison <jra@samba.org>
Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Sat Jan 14 00:51:54 CET 2012 on sn-devel-104
2012-01-14 00:51:54 +01:00
David Disseldorp
6501b8bc6f
idl: add parser for the to_null property
...
Compile into a ndr_pull_charset_to_null call.
Signed-off-by: Jeremy Allison <jra@samba.org>
2012-01-13 09:37:37 -08:00
Stefan Metzmacher
1be5e58958
pidl:Samba4/Python: add an optional 'allow_remaining' argument to __ndr_unpack__() hooks
...
Thanks to Amitay Isaacs <amitay@gmail.com> for the help with this.
metze
2012-01-09 08:55:51 +01:00
Stefan Metzmacher
12123e751e
pidl:Samba4/NDR/Parser: don't generate code for [ignore] pointers
...
metze
Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Thu Nov 24 12:31:04 CET 2011 on sn-devel-104
2011-11-24 12:31:04 +01:00
Andrew Tridgell
3d5dd91f59
pidl: added checking of NDR flags in generated code
...
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2011-09-08 03:35:27 +02:00
Jelmer Vernooij
f8ec7f6cb1
pytalloc: Use consistent prefix for functions, add ABI file.
2011-08-10 15:36:21 +02:00
Stefan Metzmacher
604b380203
pidl:Samba4/Python: PyArg_ParseTuple with "s#" returns 'int' instead of 'size_t'
...
If we pass variable references we don't get implicit casting!
metze
2011-08-08 16:45:27 +02:00
Matthieu Patou
987b25d7e0
pidl: for wireshark use only the major of the version
2011-08-06 01:33:08 +04:00
Matthieu Patou
403f064744
pidl: For wireshark check also LIBNDR_FLAG_NOALIGN for not aligning
2011-08-06 01:33:07 +04:00
Matthieu Patou
0912979341
pidl: handle union when the switch variable is outside of the union for wireshark dissector
2011-08-06 01:33:07 +04:00
Matthieu Patou
da02b56572
pidl: add subcontext handling for wireshark
2011-08-06 01:33:07 +04:00
Matthieu Patou
aea446ba79
pidl: If STR_NULLTERM we concider it's a string as well
2011-08-06 01:33:07 +04:00
Matthieu Patou
5a5f6845db
pidl: handle hyper attribute for wireshark
2011-08-06 01:33:07 +04:00
Matthieu Patou
dc829a438a
pidl: handle datablob for wireshark generator
2011-08-06 01:33:06 +04:00
Matthieu Patou
ba882bfd90
pidl: rpc version is a 32 bit
2011-08-06 01:33:06 +04:00
Matthieu Patou
5ff63e2dcf
pidl: generate code for dissecting null terminated strings
2011-08-06 01:33:06 +04:00
Matthieu Patou
7170cfaaf3
pidl: don't expect to have quote when creating import headers
...
Currently the $_ didn't contains the quote anymore, in order to avoid
any further regression the cleanup of quote is done before so that if
$_ still have quotes we clean them in anycase.
2011-08-06 01:33:06 +04:00
Stefan Metzmacher
0ea3760cae
pidl:NDR/Parser: allow [string,size_of()] together
...
metze
2011-08-01 15:46:11 +02:00
Stefan Metzmacher
98cc4c8419
pidl:NDR/Server: use interface->{UUID} and {NAME} instead of the raw {PROPERTIES}
...
metze
2011-08-01 13:44:26 +02:00
Stefan Metzmacher
e7a7a2451f
pidl:NDR/Parser: use interface->{UUID} and {NAME} instead of the raw {PROPERTIES}
...
metze
2011-08-01 13:44:26 +02:00
Stefan Metzmacher
7ae14ed666
pidl:NDR/Parser: use '0' instead of 'NULL' for an uint32_t value
...
metze
2011-08-01 13:44:26 +02:00
Andrew Bartlett
1c34842db4
pidl: Add support for the [ignore] property
...
This is implemented to simply never push this pointer, but to push a
NULL in it's place. Likewise a pull will simply return a NULL.
Andrew Bartlett
2011-04-05 23:46:04 +02:00
Günther Deschner
9115615663
pidl: add an include for "ntdomain.h" for s3 server stubs.
...
Guenther
2011-03-30 01:13:09 +02:00
Jelmer Vernooij
98e4ef09f4
pidl: Fix prototype for server init functions.
...
Autobuild-User: Jelmer Vernooij <jelmer@samba.org>
Autobuild-Date: Sat Mar 19 04:07:40 CET 2011 on sn-devel-104
2011-03-19 04:07:40 +01:00
Stefan Metzmacher
6771ade5e7
pidl:Samba4/NDR/Client: fix arguments to warning()
...
We want the file:line: information displayed.
metze
2011-03-11 11:02:23 +01:00
Stefan Metzmacher
f3465da072
pidl:Samba4/NDR/Parser: fix compiler warnings in 'pipe' related code
...
metze
2011-03-11 11:02:22 +01:00
Stefan Metzmacher
d79fb9098b
pidl: add support for 'pipe' at the NDR layer
...
metze
2011-03-10 14:31:19 +01:00
Stefan Metzmacher
f43e757096
pidl/idl.yp: fill 'pipe' elements with array and count
...
metze
2011-03-10 14:31:19 +01:00
Stefan Metzmacher
91ef694351
pidl:NDR/Client: skip all functions if pipe elements are used
...
We don't support pipe at the dcerpc level yet.
metze
2011-03-10 14:31:18 +01:00
Stefan Metzmacher
f383497436
pidl:NDR/Client: skip sync functions if pipe elements are used
...
metze
2011-03-10 14:31:18 +01:00
Stefan Metzmacher
7537f9c9bb
pidl:Python: don't generate functions with pipe elements
...
metze
2011-03-10 14:31:17 +01:00
Stefan Metzmacher
29bd658634
pidl:Samba3/ClientNDR: don't generate stubs for functions with pipe elements
...
metze
2011-03-10 14:31:17 +01:00
Stefan Metzmacher
eaa7ecdda7
pidl/NDR: add ContainsPipe() function
...
metze
2011-03-10 14:31:16 +01:00
Stefan Metzmacher
6e4e3f57e4
pidl/Typelist: add is_fixed_size_scalar()
...
metze
2011-03-10 14:31:14 +01:00
Stefan Metzmacher
6ef40f3199
pidl/Typelist: dnsp_name and dnsp_string are scalar references
...
metze
2011-03-10 14:31:13 +01:00
Andrew Bartlett
646aefd998
pidl Add support for uid_t and gid_t types
...
These are mapped to uint64_t, which should be big enough. This is
proposed to be used for internal Samba representations, where it would
be more painful to convert all the callers to an uint64_t calling
convention.
Andrew Bartlett
2011-03-01 06:29:03 +01:00
Stefan Metzmacher
bd2b0076b4
Revert "Fix alignment issues in SPOOLSS "BUFFER" marshalling."
...
This reverts commit 187f695469
.
This is the wrong fix.
metze
2011-02-28 15:54:13 -08:00
Jeremy Allison
187f695469
Fix alignment issues in SPOOLSS "BUFFER" marshalling.
...
Guenther and Metze please check !
Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Fri Feb 18 18:49:55 CET 2011 on sn-devel-104
2011-02-18 18:49:55 +01:00
Andrew Tridgell
431b25e895
pidl: support using pidl from top level directory
...
pidl needs to know if it is being used within the samba tree or not,
to get the names of some include files right. This adds support for
using pidl in the top level directory of a Samba build
This change also makes it clear that is_intree() is a boolean
function. Previously it returned different values for Samba3 and
Samba4, but there is nothing that depends on that
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2011-02-07 13:22:00 +11:00
Stefan Metzmacher
34b7b552e8
pidl:Samba4/NDR/Parser: fix ndr_pull/ndr_push mismatch
...
metze
2011-02-01 18:35:22 +01:00
Stefan Metzmacher
9fe4b695fe
pidl:Samba4/NDR/Parser: add support for 'ms_union' style aligment
...
metze
Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Tue Feb 1 12:13:45 CET 2011 on sn-devel-104
2011-02-01 12:13:45 +01:00
Stefan Metzmacher
6124148d66
pidl:Samba4/NDR/Parser: only do the switch type alignment when we have a switch type
...
This doesn't change the logic, it just doesn't call the same aligment function
twice.
metze
2011-02-01 11:21:43 +01:00
Stefan Metzmacher
76f2ddf5a9
pidl:NDR: add support for 'ms_union' property.
...
metze
2011-02-01 11:21:42 +01:00
Stefan Metzmacher
34664338f3
pidl:Typelist: fix perl warnings about recursiv function calls
...
metze
Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Wed Jan 26 10:59:04 CET 2011 on sn-devel-104
2011-01-26 10:59:04 +01:00
Stefan Metzmacher
4b068bb919
pidl:Samba3/ServerNDR: correctly initialise ndr_push struct
...
We need to copy the ptr_count from the ndr_pull struct to the ndr_push struct,
otherwise we'll reuse full pointer ids, which will cause the client to
fail in the ndr unmarshalling.
metze
2011-01-26 08:51:46 +01:00
Stefan Metzmacher
1a96ec2109
pidl:Samba4/NDR/Client: remove compat mode for dcerpc_pipe based bindings
...
The only consumer "openchange" uses the dcerpc_binding_handle based
functions now.
metze
Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Fri Jan 21 08:16:25 CET 2011 on sn-devel-104
2011-01-21 08:16:25 +01:00
Stefan Metzmacher
2778130d45
pidl:Samba4/Python: fix memory leak in _ndr_print functions
...
metze
Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Thu Jan 6 14:34:31 CET 2011 on sn-devel-104
2011-01-06 14:34:31 +01:00
Stefan Metzmacher
d89e762240
pidl:Samba4/Python: avoid ';;' in generated C code.
...
metze
Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Wed Jan 5 11:10:34 CET 2011 on sn-devel-104
2011-01-05 11:10:34 +01:00
Stefan Metzmacher
2e45cd15ec
pidl:Samba4/Python: fix segfault when setting pointers to scalars.
...
metze
2011-01-05 10:24:49 +01:00
Stefan Metzmacher
2868fc8a91
pidl: regenerate lib/Parse/Pidl/Expr.pm from expr.yp
...
metze
2011-01-05 10:24:49 +01:00
Jelmer Vernooij
b320cc7990
Fix some formatting.
2011-01-03 01:48:04 +01:00
Jelmer Vernooij
320fd69923
Use fail_on_null.
2011-01-03 01:48:04 +01:00
Jelmer Vernooij
9529fdab26
wmi: Remove unnecessary noprint statements.
2011-01-01 02:54:05 +01:00
Jelmer Vernooij
bbab7ed8d9
pidl: Add prototype for init function in pidl-generated Python bindings.
2010-12-18 02:20:21 +01:00
Jelmer Vernooij
f9fbe0874f
pidl: Use system pytalloc if possible.
2010-12-18 00:47:06 +01:00
Stefan Metzmacher
bde8046ca5
pidl:Samba4/Python.pm: ignore "SUBCONTEXT" levels
...
These are only important for the NDR marshalling
and not for the python bindings.
metze
2010-12-10 18:24:06 +01:00
Stefan Metzmacher
8babee2c00
pidl:Samba4/Python.pm: don't handle scalar reference types special
...
The only special thing is that don't need get_value_of(),
all other checks are needed.
metze
2010-12-10 18:24:06 +01:00
Matthieu Patou
21b0d5e3b1
pidl: use $CC -E if $CPP is not defined, if both undefined use cpp
...
Autobuild-User: Matthieu Patou <mat@samba.org>
Autobuild-Date: Fri Dec 10 01:26:44 CET 2010 on sn-devel-104
2010-12-10 01:26:44 +01:00
Stefan Metzmacher
12c5e3fe26
pidl:Samba4/Python.pm: use PyString_FromStringOrNULL() from pyrpc_util
...
metze
2010-12-08 19:07:09 +01:00
Jelmer Vernooij
3bff03723d
pidl/python: Allow import of talloc, even though it doesn't live in the
...
samba.dcerpc. namespace.
2010-12-01 01:48:25 +01:00
Jelmer Vernooij
ba2110d190
pidl: Allow more flexibility importing modules using convenience function.
2010-12-01 01:48:24 +01:00
Jelmer Vernooij
dd0fbc47c7
pidl: Base new objects off of talloc object.
2010-12-01 01:48:24 +01:00
Andrew Tridgell
a3ed70ff96
pidl: fixed call to cpp with a space in the directory name
2010-11-21 23:10:14 +11:00
Andrew Tridgell
135756c8ac
pidl: use a union assignment instead of memmove
...
this means we don't lose type checking
Pair-Programmed-With: Jelmer Vernooij <jelmer@samba.org>
2010-11-05 23:42:08 +11:00
Stefan Metzmacher
482c022840
pidl:Samba4/NDR/Parser: fix NDR64 union alignment
...
We need to align before the switch_type and before the
union arms. Both alignments are to the boundary of the largest
possible union arm.
This means that adding a new union arm with a larger alignment
would break compat!!!
metze
Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Sun Oct 24 17:49:23 UTC 2010 on sn-devel-104
2010-10-24 17:49:23 +00:00
Kai Blin
719a6bbfed
ndr dns: Add simple parser
2010-10-23 10:17:05 +00:00
Günther Deschner
df7523c792
pidl: fix minor typo in s3 server generation.
...
Guenther
Autobuild-User: Günther Deschner <gd@samba.org>
Autobuild-Date: Mon Oct 11 15:12:57 UTC 2010 on sn-devel-104
2010-10-11 15:12:57 +00:00
Tim Potter
391b24e3ed
Fix some warnings at higher -W levels in pidl generated code.
...
Match data type for info levels to data type returned by utility
functions.
Autobuild-User: Tim Potter <tpot@samba.org>
Autobuild-Date: Mon Oct 11 12:18:22 UTC 2010 on sn-devel-104
2010-10-11 12:18:21 +00:00
Kai Blin
65d2cfdcf1
dnsp: Parse TXT records
2010-10-04 20:59:59 +02:00
Kai Blin
ee7ee2c4c2
ndr: Implement push function for IPv6 addresses
...
Thanks to Julien Kerihuel for providing the patch that pushed me to
finish my own IPv6 patches.
2010-10-04 20:59:59 +02:00
Kai Blin
013780b1e1
ndr: Add support for pulling/printing an ipv6address type
2010-10-04 20:59:59 +02:00
Jelmer Vernooij
88d08c172c
pidl: Allow longs for bitmasks.
2010-10-03 16:25:37 +02:00
Jelmer Vernooij
b7acb8ebb6
pidl: simplify some generated code.
2010-10-03 16:25:37 +02:00
Jelmer Vernooij
b77bcea352
pidl: Fix handling of typedefs of typedefs.
2010-10-01 11:03:18 +02:00
Stefan Metzmacher
fcee50b9c9
pidl: add support for pointers in typedefs
...
metze
2010-09-28 23:06:52 +02:00
Stefan Metzmacher
d4636c47c7
pidl:NDR/Parser: remove unused code for array element index
...
metze
2010-09-28 23:06:51 +02:00
Stefan Metzmacher
7fff22c29d
pidl:NDR/Parser: simplify logic in ParseMemCtxPullFlags()
...
metze
2010-09-28 23:06:49 +02:00
Stefan Metzmacher
3fa29cdd94
pidl:NDR/Client: make the generated code look a bit nicer
...
metze
2010-09-28 23:06:48 +02:00
Stefan Metzmacher
96666d48a7
pidl: remove unused async property handling
...
metze
2010-09-28 23:06:45 +02:00
Stefan Metzmacher
a73a2abb3a
pidl/Python: use has_property($d, "noopnum") helper function
...
metze
2010-09-28 23:06:44 +02:00
Stefan Metzmacher
65c5278f4d
pidl:NDR/Client.pm: remove unreached code
...
metze
2010-09-28 23:06:42 +02:00
Stefan Metzmacher
121ad074f9
pidl/Python: remove todo handling from PythonFunction(), it's done by the caller
...
metze
2010-09-28 23:06:41 +02:00
Stefan Metzmacher
a0fa1dd6fc
pidl/Typelist: let typeIs() do TYPEDEF dereference in the HASH case
...
metze
2010-09-28 23:06:40 +02:00
Andrew Tridgell
7d380795b6
pidl: added ifdef guards around ndr headers
...
this prevents us parsing the leading headers needlessly
2010-09-27 22:55:05 -07:00
Stefan Metzmacher
bea4948acb
pidl:NDR/Parser: fix range() for arrays
...
metze
2010-09-23 13:34:08 -07:00
Jelmer Vernooij
049c4fa04d
pytalloc: Add default compare function.
2010-09-21 11:47:03 -07:00
Jelmer Vernooij
6a3c687f03
pidl/python: Allow passing in UTF8 string objects as well as unicode
...
objects for IDL strings.
Signed-off-by: Andrew Tridgell <tridge@samba.org>
2010-09-20 23:17:41 -07:00
Jelmer Vernooij
c4c6f8f175
s4-pild-python: Fix assignments - even though we reference the mem_ctx
...
of an object we still use the actual ptr.
2010-09-20 22:40:47 -07:00
Jelmer Vernooij
a7393449eb
pidl: Fix segfault when accessing unicode objects.
2010-09-20 22:40:46 -07:00
Jelmer Vernooij
5dd47eeac2
s4-pidl-python: use correct talloc pointer when allocating subobjects.
2010-09-20 22:40:46 -07:00
Andrew Tridgell
83a24ff2ef
pidl: prevent ndr_print_*() dying on NULL pointers
...
when using ndrdump you can get uninitialised structures containing
pointers. Don't segfault when trying to print them
2010-09-16 21:09:17 +10:00
Jelmer Vernooij
0bc53f7d9f
pidl: Keep only a single copy of samba.dcerpc.base.ClientConnection.
2010-09-03 02:39:38 +02:00
Jelmer Vernooij
c5449c9298
pidl: Factor out generation of interface type name.
2010-09-03 00:35:29 +02:00
Andrew Tridgell
71f2ebcae0
pidl: cope with dom_sid28 in python generator
...
treated the same as dom_sid2
2010-09-02 13:37:07 +10:00
Andrew Tridgell
58d92cefe2
pidl-python: cope with NULL pointers in more places
...
NULL is converted to Py_None
2010-09-02 13:37:07 +10:00
Stefan Metzmacher
831611e221
pidl:Samba4/NDR/Client: support argument based stubs for [in,out,string]
...
metze
2010-08-28 10:59:20 +02:00
Stefan Metzmacher
94faf0ccbe
pidl:NDR: [in,out,string] doesn't need to pointers
...
metze
2010-08-28 10:59:19 +02:00
Stefan Metzmacher
aa3b75ad1f
pidl:Samba4/NDR/Client: correctly copy [out,charset()] buffers
...
If the conversion from CH_UTF16 to CH_UNIX uses multi-byte characters
in CH_UNIX, we should not silently truncate the string, but return
an error.
metze
2010-08-28 10:59:19 +02:00
Stefan Metzmacher
eeebaa63f1
pidl:Samba4/NDR/Client: fix skip reason for unsized arrays
...
metze
2010-08-28 10:59:18 +02:00
Andrew Tridgell
9cb771a4a0
pidl-python: ensure we allocate ref ptrs before use
...
this fixes a crash on samba4.samr.python in the build farm
2010-08-26 22:50:20 +10:00
Stefan Metzmacher
a701484230
pidl:Samba3/ClientNDR: remove unused ParseOutputArgument function
...
metze
2010-08-26 13:29:21 +02:00
Andrew Tridgell
4f8087cdb9
s4-python: reference substructures onto the parent structure
...
when a python object that is part of a parent structure is created, we
should reference it on the parent structure. This ensures that when
the child object goes out of scope that the parent structure is still
valid
2010-08-25 23:05:05 +10:00
Andrew Tridgell
895064000d
pidl-python: fixed the docstrings for ndr_print, ndr_pack and ndr_unpack
2010-08-23 15:55:38 +10:00
Andrew Tridgell
34b8615574
pidl: cope with bad type conversions in unions
...
This prevents a crash when converting bad types in NDR unions
Pair-Programmed-With: Jelmer Vernooij <jelmer@samba.org>
2010-08-22 14:57:34 +10:00
Andrew Tridgell
5a025c82f5
pidl: added a __ndr_print__() method on python NDR objects
...
This allows you to print a returned NDR structure using
s.__ndr_print__() which gives an easy view of complex
structures, such as those from netlogon
2010-08-22 14:57:34 +10:00
Volker Lendecke
b3f9345d76
Fix a typo
2010-08-16 21:14:25 +02:00
Stefan Metzmacher
b0b73ca041
pidl:Samba4/NDR/Client.pm: correctly copy fixed size out arrays
...
metze
2010-08-16 10:08:45 +02:00
Michael Adam
045f4c96d5
pidl: fix printing of server side ndr request debug messages
...
The macros NDR_PRINT_IN_DEBUG and NDR_PRINT_OUT_DEBUG are made for
the client side. For the server side, the NDR_SET_VALUES flag needs
to be added for the OUT struct and not for the IN struct, otherwise,
the OUT part can print uninitialized data and the IN part may
recalculate string lengths illegally.
2010-08-13 23:50:41 +02:00
Stefan Metzmacher
5130e664b9
pidl:Samba3/ClientNDR: implement rpccli_ stubs on top of dcerpc_ stubs
...
metze
2010-08-12 14:31:23 +02:00
Stefan Metzmacher
51fb4c3860
pidl:Samba4/NDR/Client: add sync dcerpc_pipe based stubs as compat for OpenChange
...
This will activate the compat wrappers for all functions of an interface:
#define DCERPC_IFACE_MYPROTO_COMPAT 1
#include <ndr_myproto_c.h>
This will activates the compat wrappers just for specific functions:
#define DCERPC_CALL_MYFN1_COMPAT 1
#define DCERPC_CALL_MYFN2_COMPAT 1
#include <ndr_myproto_c.h>
metze
2010-08-12 14:31:20 +02:00
Stefan Metzmacher
719981adfd
pidl:Samba4/NDR/Client: add non struct base dcerpc_binding_handle client stubs
...
metze
2010-08-12 14:31:20 +02:00
Stefan Metzmacher
62297dff8f
pidl:Samba4/NDR/Client: convert code to $self->pidl()
...
metze
2010-08-12 14:31:19 +02:00
Stefan Metzmacher
570eefc57a
pidl:Samba4/NDR/Client: s/interface/if/
...
metze
2010-08-12 14:31:19 +02:00
Stefan Metzmacher
76691e9eaf
pidl:Samba4/NDR/Client: make use of the new dcerpc_binding_handle_call() infrastructure
...
metze
2010-08-12 14:31:18 +02:00
Stefan Metzmacher
db89fdac73
pidl:Samba4/NDR/Client: remove old dcerpc_pipe based sync stubs
...
They're unused in Samba and only used by OpenChange.
I'll add a compat functions for OpenChange later.
metze
2010-08-12 14:31:18 +02:00
Stefan Metzmacher
a2e1f54b3e
pidl:Samba3/ClientNDR: ignore "todo" functions
...
metze
2010-08-12 14:31:16 +02:00
Stefan Metzmacher
a22989a54a
pidl:NDR: correctly handle no pointer bracket arrays with 'string'
...
metze
2010-08-09 19:39:10 +02:00
Stefan Metzmacher
0a7f749bc8
pidl:NDR: correctly handle bracket arrays with 'string'
...
metze
2010-08-08 11:05:19 +02:00
Stefan Metzmacher
33d1879d5b
pidl: Samba3/ClientNDR - Correctly copy arrays, if r.out.size < r.in.size.
...
metze
Signed-off-by: Andreas Schneider <asn@samba.org>
2010-08-06 14:20:08 +02:00
Andrew Tridgell
a41dffcb6a
pidl: added a new type dnsp_name
...
This is a name type used in DNS where each DNS component maps to a
length byte followed by the string
We want these to map to a char *, which is why we need to do this in
PIDL
2010-08-05 17:31:29 +10:00
Andreas Schneider
c1e81686af
pidl: Use struct pipes_struct.
2010-07-28 10:39:22 +02:00
Andreas Schneider
5cefbfef26
s3-rpc_server: Added callbacks for init and shutdown of a rpc service.
...
This adds two callback function for each rpc service. One is for
initialisation and the other for shutdown. rpc_<service>_unregister()
needs to be called to execute the shutdown function.
2010-07-19 12:59:18 +02:00
Simo Sorce
100d37fc46
s3-dcerpc: Use DATA_BLOB for pipes_struct input data
...
Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-16 01:51:18 +02:00
Simo Sorce
31b59bbf99
s3-dcerpc: Convert rdata from prs_struct to a simple DATA_BLOB
...
Signed-off-by: Günther Deschner <gd@samba.org>
2010-07-16 01:51:16 +02:00
Günther Deschner
690ed0c5e2
s3-rpc: when using rpc_pipe_open_internal, make sure to go through NDR.
...
Otherwise a lot of information that is usually generated in the ndr_push remains
in an uninitialized state.
Guenther
2010-07-08 16:35:26 +02:00
Günther Deschner
1dcf0e917e
pidl: s3 server stubs: make sure LIBNDR_FLAG_BIGENDIAN is set when negotiated.
...
Guenther
2010-07-05 18:06:30 +02:00
Matthieu Patou
7703b89ae5
pidl: Finish to fix the python generated code for 64bit integers
...
Signed-off-by: Jelmer Vernooij <jelmer@samba.org>
2010-06-25 11:33:16 +02:00
Jelmer Vernooij
700fcfbc63
pidl/python: Make sure to always increment reference counter when using
...
Py_None.
2010-06-25 00:16:18 +02:00
Jelmer Vernooij
4a75cb9cd5
pidl/python: Increment reference counter on Py_None to prevent us from
...
accidentally deallocating it.
2010-06-24 23:17:51 +02:00
Günther Deschner
bd4bbd9beb
pidl: make sure to fill in cli->pipes_struct->hdr_req.opnum in s3 server dispatch tables.
...
Guenther
2010-06-16 12:15:24 +02:00
Andrew Bartlett
f5f184a77c
pidl: Allow new property 'no_srv_register'.
...
This Samba-only property prevents pild from emitting the
rpc_wbint_init function, which causes problems because it needs
rpc_srv_register().
Andrew Bartlett
Signed-off-by: Günther Deschner <gd@samba.org>
2010-05-18 17:17:29 +02:00
Jelmer Vernooij
b8268cf7b0
s3: Remove use of iconv_convenience.
2010-05-18 11:45:31 +02:00
Jelmer Vernooij
f9ca9e46ad
Finish removal of iconv_convenience in public API's.
2010-05-18 11:45:30 +02:00
Julien Kerihuel
9cddf891ad
Choose between local tevent_status.h header file and installed one
...
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2010-05-12 19:30:56 +02:00
Günther Deschner
0798ddf63a
pidl: add NDR_PRINT_DEBUG output to generated s3 server dispatch tables.
...
This dramatically helps tracking and debugging usage of the
rpc_pipe_open_internal users.
Guenther
2010-05-08 23:00:20 +02:00
Günther Deschner
094ee6cb43
pidl: indent cosmetics for s3 server stubs.
...
Guenther
2010-05-03 14:44:57 +02:00
Matthieu Patou
831336293d
pidl: Fix the generation of py helper for 64 bit integer
...
Up to now the generation of code for python helpers dealing with 64 bits (NTTIME,hyper, ...)
was broken because they were assumed to be Int (PyInt_From ...) as Integer is always 32 bits
in python.
This fix use PyLong and states that the incomming data is a long long as it should be 64 bit at least.
Signed-off-by: Jelmer Vernooij <jelmer@samba.org>
2010-05-02 15:59:49 +02:00
Jeff Morriss
0f57a39916
pidl: Fix display field for time fields with newer versions of Wireshark.
...
Pidl generates some Wireshark dissector fields of type FT_ABSOLUTE_TIME.
Starting some time not too long ago, these fields need a 'display' field
other than BASE_NONE or BASE_DEC. This commit fixes this,
*assuming* that all the times are "local."
2010-04-30 13:13:16 +02:00
Stefan Metzmacher
a8e81c25eb
pidl:Samba4/NDR/Client: map NT_STATUS_NET_WRITE_FAULT to the matching NT_STATUS_RPC_* code
...
metze
2010-04-15 09:34:03 +02:00
Andrew Bartlett
738ac53037
pidl:python Allow 'nopython' to work
...
The 'nopython' flag wasn't available for use, as it failed to get past
the syntax checker.
Andrew Bartlett
2010-04-09 12:21:27 +03:00
Andrew Tridgell
f9eae32f4b
s4-waf: mark the wscript files as python so vim/emacs knows how to highlight them
2010-04-06 20:27:11 +10:00
Andrew Tridgell
ecb775de2e
s4-waf: install PIDL modules
2010-04-06 20:27:10 +10:00
Stefan Metzmacher
e230c8dd24
pidl:Samba4/Client: don't mix rpc and application NTSTATUS errors anymore for the new bindings
...
The new dcerpc_binding_handle based client stubs don't mix error codes anymore,
while the old dcerpc_pipe based ones still do to keep OpenChange happy for now.
metze
2010-03-29 15:35:53 +02:00
Stefan Metzmacher
4985720e81
pidl:Samba4/Python: librpc/rpc/dcerpc.h isn't needed anymore
...
metze
2010-03-23 18:44:33 +01:00
Stefan Metzmacher
30aa55a998
pidl:Samba4/Python: make use of dcerpc_binding_handle stubs
...
metze
2010-03-18 13:34:04 +01:00
Stefan Metzmacher
f055fce74c
pidl:Samba4/Python: remove compiler warnings
...
metze
2010-03-18 13:34:04 +01:00
Stefan Metzmacher
2624bafca5
pidl:Samba4/Python: remove compiler warnings when using -Wc++
...
metze
2010-03-18 13:34:04 +01:00
Stefan Metzmacher
d0662ac4d0
pidl:Samba4/NDR/Client: make the old rpc_request style async functions static
...
metze
2010-03-12 15:25:49 +01:00
Stefan Metzmacher
15d9675b04
pidl:Samba4/NDR/Client: generate stubs for dcerpc_binding_handle abstraction
...
metze
2010-03-12 15:25:41 +01:00
Stefan Metzmacher
454bedcb80
pidl:Samba4/NDR/Client: don't generate client stubs for function marked as [todo]
...
metze
2010-03-12 15:25:40 +01:00
Stefan Metzmacher
8844acf424
pidl:Samba/Python: don't generate methods for functions marked as [todo]
...
metze
2010-03-12 15:25:40 +01:00
Stefan Metzmacher
20980eb787
pidl:NDR/Client.pm: generate explicit _recv functions
...
metze
2010-03-01 16:11:51 +01:00
Andrew Bartlett
f74ce57cb5
s4:rpc_server Add a 'if_version' parameter to the bind operation.
...
This allows the interface version to be forwarded to the remote server
in the RPC proxy, both in the endpoint lookup and the subsequent bind.
Andrew Bartlett
2010-02-20 02:55:29 +11:00
Günther Deschner
a049d75193
pidl: use ndr_push_relative_ptr2_start and ndr_push_relative_ptr2_end.
...
Guenther
2010-02-18 13:43:59 +01:00
Matthias Dieter Wallnöfer
04cf9b81eb
pidl - Remove "Py_RETURN_NONE" compatibility code
...
This was needed only by Python 2.3 which we no longer support.
2010-02-09 17:53:09 +01:00
Jelmer Vernooij
4b11e0c67c
pidl: Include Python.h first, to avoid warnings.
2010-01-21 16:15:10 +13:00
Matthieu Patou
678f2ca14b
pidl: Introduce new dirrective: relative_short
...
relative_short is like relative but instead of having the offset coded on 4 bytes
it's coded on 2 bytes. Such things happen in GET_DFS_REFERAL messages.
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2009-12-12 10:26:05 +01:00
Günther Deschner
79f82998b1
pidl: fix handling of output arguments in s3 client stubs.
...
a20e095
used (uint8_t) instead of (uint8_t *).
Guenther
2009-11-27 16:15:33 +01:00
Stefan Metzmacher
a20e095b1f
pidl:Samba3/ClientNDR: $size can be 'foo / 2' so we need to add '(' and ')'
...
foo / 5 * sizeof(bar)' isn't the same as
'(foo / 2) * sizeof(bar)'.
metze
2009-11-26 11:47:42 +01:00
Stefan Metzmacher
ab1c92950f
pidl:NDR/Parser: $size can be 'foo / 2' so we need to add '(' and ')'
...
foo / 5 * sizeof(bar)' isn't the same as
'(foo / 2) * sizeof(bar)'.
metze
2009-11-26 11:47:41 +01:00
Stefan Metzmacher
2cd88197f8
Revert "Work around ndr_unpack failing on structures with relative pointers."
...
This reverts commit c2cdb4ad5c
.
It's not needed anymore.
metze
2009-11-20 13:48:36 +01:00
Stefan Metzmacher
05850d1894
pidl:NDR/Parser.pm: update ndr_pull->relative_highest_offset after handling relative pointers
...
metze
2009-11-20 13:48:36 +01:00
Volker Lendecke
e181b88978
Revert "s3: Do not reference ndr_table_<pipe> in the cli_ routines directly"
...
This reverts commit daa964013b
.
2009-11-08 19:43:47 +01:00
Volker Lendecke
47455b4d1a
Revert "s3: Do not reference the ndr_tables in the server calls directly"
...
This reverts commit 98fb71782e
.
2009-11-08 19:43:46 +01:00
Volker Lendecke
82c35e460e
Revert "s3: Do not reference ndr_table when calling rpc_srv_register"
...
This reverts commit 494b2aff88
.
2009-11-08 19:43:46 +01:00
Volker Lendecke
494b2aff88
s3: Do not reference ndr_table when calling rpc_srv_register
2009-11-08 13:12:15 +01:00
Volker Lendecke
98fb71782e
s3: Do not reference the ndr_tables in the server calls directly
...
This involves storing the interface table in the pipes_struct
2009-11-08 13:12:14 +01:00
Volker Lendecke
daa964013b
s3: Do not reference ndr_table_<pipe> in the cli_ routines directly
2009-11-08 13:12:13 +01:00
Volker Lendecke
5cdee7ae05
s3: Do the printing for DEBUGLEVEL>=10 centrally
...
12 insertions(+), 10651 deletions(-)
I think that says it all :-)
2009-11-07 11:07:37 +01:00
Andrew Tridgell
dfbaf79a1b
pidl: don't warn for compatible scalar types in unions
...
When we have an enum that is used as a union discriminator, what
matters is that the scalar mappings are the same, not if the types are
the same (otherwise we get warnings about uint1632).
Thanks to gd for noticing this.
2009-10-13 10:03:27 +11:00
Andrew Tridgell
1d0fb1e0fb
tdr: teach TDR about uint1632 enums
...
TDB doesn't have NDR64, but it needs to know how to map the new types
from pidl
2009-10-07 09:56:23 +11:00
Andrew Tridgell
2bf8a7485c
pidl: get the alignment right for uint1632 enums (NDR64)
...
The default enum in NDR63 is 32 bits, not 16 bits. We need a uint1632
type to get the alignment right.
2009-10-07 09:56:22 +11:00
Ronnie Sahlberg
e9f126421d
add trailer alignment to structures
2009-10-06 19:14:11 +11:00
ronnie sahlberg
d26016c198
PIDL fix for using external types with wireshark backend
...
List,
Please review this patch to pidl.
Basically, we need to process the wireshark conformance file BEFORE
we process the idl file since this file may define external types
and set the alignment for them (using the TYPE directive).
Otherwise pidl will default all external types to use 4byte alignment
which breaks (much more often) on NDR64
regards
ronnie sahlberg
From 8f86903fc353d0906bd82e72ce19c5af09beb001 Mon Sep 17 00:00:00 2001
From: Ronnie Sahlberg <ronniesahlberg@gmail.com>
Date: Mon, 5 Oct 2009 15:22:43 +1100
Subject: [PATCH] In the PIDL wireshark backend, we define external types in the conformance
file using the TYPE directive.
If we declare external types here, we must parse this file before we process
the IDL file, or else these external types will all default to 4byte padding
(pidl assumes all unknown types are 4byte aligned).
Make sure we read the conformance file and create these new types before
we parse the idl file.
Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
2009-10-06 19:11:51 +11:00
Andrew Tridgell
f21fb4b395
pidl: added int3264 as a base type
...
This is the type used for a variable that is 32 bits for NDR32 and 64
bits for NDR64
2009-10-03 18:17:23 +10:00
Andrew Tridgell
9eb78be4a6
ndr64: added support for trailing gap alignment
...
NDR64 has a 'trailing gap' alignment, which aligns the end of a
structure on the overall structure alignment.
This explains the discrepancy we had with the RPC-SAMR test and NDR64
2009-10-02 12:05:59 +10:00
Andrew Tridgell
64e08fef16
pidl: added union padding for NDR64
...
This fixes the problem with samr UserInfo16 when NDR64 is enabled
2009-09-29 18:08:22 +10:00
Jelmer Vernooij
830adcd58d
pidl: Avoid using talloc_free as function pointer, since it may be a
...
macro.
2009-09-28 15:03:17 +02:00
Jelmer Vernooij
390cd90c8f
pidl(s4.python): Fix arguments to PyCObject_FromVoidPtr for string_array's.
...
Caught by Guenther.
2009-09-26 01:34:22 +02:00
Andrew Tridgell
1a1cb92583
ndr: split out ndr enum functions
...
This allows for easier implementation of the NDR32/NDR64 split
2009-09-17 15:19:30 -07:00
Andrew Tridgell
db5e7f3d05
s4-pidl: add support for NDR64
...
Added support for NDR64 to the samba4 pidl generator
2009-09-17 15:19:28 -07:00
Jeremy Allison
02dc4a1e4e
Ensure we enclose the enum values in brackets to make the cast work.
...
Jeremy.
2009-09-17 11:27:51 -07:00
Jeremy Allison
95311a220e
Fix the problem with pidl generating invalid C for enums. According
...
to the C standard an enum is guarenteed to be an (int), which means
for 4 byte ints specifying a type of 0x80000000 is an invalid value.
The Solaris compiler complains about this. Fix by adding an (int)
cast in front of the value generation.
Jeremy.
2009-09-17 11:11:06 -07:00
Andrew Tridgell
011f103501
when we get an NDR error in the logs, it is useful to know where it happened
2009-08-12 15:33:37 +10:00
Stefan Metzmacher
558ff911df
pidl: parse idl 'pipe' typedefs, but print out a not supported message for now
...
metze
2009-08-07 11:50:24 +02:00
Stefan Metzmacher
20a6fb5cdb
pidl: fix formatting in expr.yp
...
metze
2009-08-07 11:50:24 +02:00
Stefan Metzmacher
bfa9624946
pidl: fix formatting in idl.yp
...
metze
2009-08-07 11:50:24 +02:00
Stefan Metzmacher
2ed71264e1
pidl:Samba3/ClientNDR: add support tevent_req based _send/recv() client functions
...
metze
2009-07-31 14:10:14 +02:00
Stefan Metzmacher
28a4656738
pidl:Samba3/ClientNDR: rename ParseFunction => ParseFunctionSync and add ParseFunction as glue
...
This prepares the following ParseFunctionAsync* commits.
metze
2009-07-31 12:49:47 +02:00
Stefan Metzmacher
6a1ff90708
pidl:Samba3/ClientNDR: allow passing optional variable prefixes to ParseOutputArgument()
...
metze
2009-07-31 12:49:46 +02:00
Stefan Metzmacher
9e4cf82b74
pidl/Samba4.pm: allow an optional prefix passed to DeclLong()
...
metze
2009-07-31 12:49:46 +02:00
Stefan Metzmacher
41b95da435
pidl:Samba4/Python: fix mapType() => mapTypeName()
...
This tries to fix commit 8eff9f9a31
.
The problem was:
Undefined subroutine &Parse::Pidl::Samba4::Python::mapType called at /home/metze/master4/pidl/lib/Parse/Pidl/Samba4/Python.pm line 848.
Jelmer: please check this.
metze
2009-07-31 10:16:40 +02:00
Jelmer Vernooij
8eff9f9a31
python: Cope with the dom_sid2 alias in pidl's python generating code.
...
This fixes some problems in the samr Python bindings that pidl was
(correctly) warning about.
2009-07-30 20:28:29 +02:00
Jelmer Vernooij
6768cfe624
DCE/RPC(Python): Rename py_talloc_import to py_talloc_steal.
...
Use py_talloc_reference in DCE/RPC code, fixes
access to SAMR pipe.
2009-07-30 20:04:42 +02:00
Ronnie Sahlberg
c6d7f3bdb5
pidl: import a patch to pidl made in the wireshark reporitory.
...
Original commit message in wireshark SVN (rev 28961):
====
From Kovarththanan Rajaratnam:
More "Cleanup header_field_info definitions"
====
Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2009-07-28 12:30:16 +02:00
Stefan Metzmacher
92791ce9a8
pidl: allow foo being on the wire after [length_is(foo)] uint8 *buffer
...
metze
2009-07-27 17:51:32 +02:00
Stefan Metzmacher
7ccc9a6ef5
pidl: add support for [string] on fixed size arrays.
...
midl also supports this:
struct {
long l1;
[string] wchar_t str[16];
long l2;
};
Where the wire size of str is encoded like a length_is() header:
4-byte offset == 0;
4-byte array length;
The strings are zero terminated.
metze
2009-07-27 17:51:32 +02:00
Jelmer Vernooij
7889823783
pidl: Print actual type names in errors about unknown origins rather than 'HASH(0x....)'.
2009-07-19 21:12:56 +02:00
Jelmer Vernooij
54a2f51d57
pidl: Print proper errors when arrays don't have a specified size rather than spewing pages of perl warnings.
2009-07-19 20:42:52 +02:00
Brad Hards
00bfe9c286
Add support for double type in pidl.
...
Signed-off-by: Jelmer Vernooij <jelmer@samba.org>
2009-06-02 18:05:42 +02:00