1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-14 19:24:43 +03:00

131 Commits

Author SHA1 Message Date
Stefan Metzmacher
bb75710d40 r20417: - fix pushing of drsuapi_DsAttributeValueDataBlob
- make drsuapi_DsReplicaAttribute public so that the ndr_print_*
  function can be used from the outside

metze
(This used to be commit f12776b9a9de55d5c67335d5e59c0d83a74ac939)
2007-10-10 14:30:32 -05:00
Jelmer Vernooij
8d870db811 r19859: Reuse referrent ids when pushing full pointers (still need to
avoid pushing the referred object twice) and add test for full pointers.
(This used to be commit 1638c8d234dbc85298000685e49570f23dfd0bf8)
2007-10-10 14:28:26 -05:00
Jelmer Vernooij
128fe5324b r19856: Use sptr as basis for full ptr implementation. Will add checks for duplicates later.
(This used to be commit 006ab1d4a449c81680add57e0116a86b8317fbfb)
2007-10-10 14:28:26 -05:00
Andrew Tridgell
30ee8beb93 r18301: I discovered how to load the warnings from a build farm build into
emacs compile mode (hint, paste to a file, and compile as "cat
filename").

This allowed me to fix nearly all the warnings for a IA_64 SuSE build
very quickly.
(This used to be commit eba6c84efff735bb0ca941ac4b755ce2b0591667)
2007-10-10 14:18:04 -05:00
Jelmer Vernooij
9727b061f3 r15776: Don't generate ref pointers in Samba4-generated code. There is no point
in having pointers for outgoing data when you can already modify the top-level
element.

This can be overridden (temporarily) by specifying the new "keepref"
attribute. Once we've removed keepref from all IDL files, I'll remove this
attribute as well.
(This used to be commit bdc6dd37503ced8322a671d225122ccffbb8bfec)
2007-10-10 14:08:18 -05:00
Jelmer Vernooij
37aa2c5e8f r15407: Get rid of some more uint_t
(This used to be commit 897329c2534dc8e24670b91bc448939141f27417)
2007-10-10 14:05:33 -05:00
Jelmer Vernooij
35349a58df r14542: Remove librpc, libndr and libnbt from includes.h
(This used to be commit 51b4270513752d2eafbe77f9de598de16ef84a1f)
2007-10-10 13:58:42 -05:00
Andrew Tridgell
65238dc940 r14310: length needs to be initialised
(This used to be commit 20d7f2ae35761533613f9d6dcf941a5ef3c7e07b)
2007-10-10 13:57:10 -05:00
Jelmer Vernooij
af30a32b69 r13840: Mark some functions as public.
(This used to be commit 9a188eb1f48a50d92a67a4fc2b3899b90074059a)
2007-10-10 13:52:14 -05:00
Andrew Tridgell
4be3699848 r13741: make the pointer type in pidl handle any size pointer, just in case we
have a 128 bit machine out there somewhere
(This used to be commit 4a1b7580a7ea5db7d10c8ee6a5b3950313b7d273)
2007-10-10 13:52:08 -05:00
Andrew Tridgell
e3e048630b r13738: added support for a "pointer" type in pidl. This will be used in the
opendb work that will be committed shortly.

The pointer type assumes that pointers fit in 64 bits, which is
probably OK on all our supported architectures.
(This used to be commit d2a2057ea5af140ca88a9c305a38fc5dca9eaafd)
2007-10-10 13:52:07 -05:00
Andrew Tridgell
f4edfc21e5 r12016: fixed a valgrind error
(This used to be commit 482548031e69ba4bddac999ca9f2cb6ad8359953)
2007-10-10 13:47:00 -05:00
Stefan Metzmacher
fd18ab334a r11973: make it easier to find bugs
metze
(This used to be commit 247f90c28d845fd2224cb07ed30d3e8122ba5644)
2007-10-10 13:46:53 -05:00
Stefan Metzmacher
1598aaca95 r11676: as tridge uses 0x%llx in his latest commits...
try to use it every where and see how portable it is

metze
(This used to be commit 66a94de5ddd09df858a515555c01aa3d4f7d3e96)
2007-10-10 13:46:12 -05:00
Stefan Metzmacher
b94fcbd306 r10868: make flag(NDR_PAHEX) possible to use and show the union level in hex
metze
(This used to be commit 7efb92adc057ad8a993eb9de66c3806608747104)
2007-10-10 13:39:38 -05:00
Stefan Metzmacher
f1c5227078 r10637: use the correct memory context in the ndr_pull_* function
to build the talloc hierachie correct

metze
(This used to be commit afd9dda5773d381550bdb061a8e345b33e1fc371)
2007-10-10 13:39:14 -05:00
Jelmer Vernooij
f3b412fbd6 r10438: Move portability functions to lib/replace/; replace now simply ensures
that a given set of (working) POSIX functions are available (without
prefixes to their names, etc). See lib/replace/README for a list.

Functions that behave different from their POSIX specification
(such as sys_select, sys_read, etc) have kept the sys_ prefix.
(This used to be commit 29919a71059b29fa27a49b1f5b84bb8881de65fc)
2007-10-10 13:38:45 -05:00
Stefan Metzmacher
b7545608ad r10346: here are only real ip-addresses valid, prevent dns lookups,
when the input is invalid

metze
(This used to be commit 1083204c1f89d9b918015113b6cc2ea423372fe0)
2007-10-10 13:38:30 -05:00
Stefan Metzmacher
efa30b073f r10339: fix ndr_push_udlongr
metze
(This used to be commit a34d0771ce60d4c590c8bc14449cc23d31a6dd2c)
2007-10-10 13:38:29 -05:00
Jelmer Vernooij
d99d06d954 r8612: Parse::Pidl::NDR:
Values that are deferred but don't contain deferred data don't
	need NDR_BUFFERS

Parse::Pidl::Samba::NDR::Parser:
	Only use manually written array access functions when the array
	functions are faster then the autogenerated ones. Makes ndr_basic.c
	a bit shorter.
(This used to be commit cad40815dcfb7cdcab13bd0cd204ef8711605ef3)
2007-10-10 13:29:44 -05:00
Andrew Tridgell
e835621799 r8520: fixed a pile of warnings from the build farm gcc -Wall output on
S390. This is an attempt to avoid the panic we're seeing in the
automatic builds.

The main fixes are:

 - assumptions that sizeof(size_t) == sizeof(int), mostly in printf formats

 - use of NULL format statements to perform dn searches.

 - assumption that sizeof() returns an int
(This used to be commit a58ea6b3854973b694d2b1e22323ed7eb00e3a3f)
2007-10-10 13:29:34 -05:00
Stefan Metzmacher
4a993c5241 r8167: - use the same algorithm than w2k3 for 'unique' pointer values
- add a new 'sptr' (simple-full) pointer type to simulate what we need to support pipes
  like epmapper and mgmt that uses 'ptr' full pointer in their spec

- I runned make test and test_w2k3.sh with this, all fine

does we have any other pipe using 'unique' pointer where we need 'ptr'?

btw: jelmer, what does 'ignore' pointers do? they are allowed in pidl but not implemented!

metze
(This used to be commit d19068bfb2e3ff5d88bc3b76d5cef93417c7f218)
2007-10-10 13:19:16 -05:00
Stefan Metzmacher
53067ce37f r8157: add the algorithm for unique pointers that w2k3 uses.
this is ifdef'ed out currently because we use 'unique' pointers in the epmapper pipe,
where we should use 'ptr' full pointers.

metze
(This used to be commit ccc9d9267a60287eff1fb26132aa7cae3b39dcee)
2007-10-10 13:19:13 -05:00
Stefan Metzmacher
d70232a747 r6574: send a value for embedded ref pointers,
(this fixes the doublepointer test against w2k3)

but we accept zero pointers on the receive side,
because it's used in DRSUAPI

metze
(This used to be commit 748ab5449bcc5b47f5ceaa83277bf8084c44ec56)
2007-10-10 13:16:27 -05:00
Stefan Metzmacher
14b63614fa r6519: move string handling functions to a seperate file
metze
(This used to be commit a29d52817ce943c15f6896b74273df739867c8f7)
2007-10-10 13:16:21 -05:00
Jelmer Vernooij
4c4738938a r5977: Fix uninitialised memory bug in ndr_pull_ref_ptr(). This fixes the
Test_DoublePointer test failure.
(This used to be commit 4089d5f67d6e4121056a63ececb13187fd773636)
2007-10-10 13:11:11 -05:00
Jelmer Vernooij
ef213b0248 r5866: Add InitShutdown IDL and torture test.
Implement push side of NDR_LEN4|NDR_NOTERM strings (pull side was already present)
(This used to be commit ea61ec1122841716ed5d90085ba79e7bf691bd6a)
2007-10-10 13:11:05 -05:00
Stefan Metzmacher
ebc34d2157 r5796: add ndr_* function for int8 and int16
metze
(This used to be commit 8ac0928a914c1cee3f0493b515f03c6422a8b71a)
2007-10-10 13:11:03 -05:00
Stefan Metzmacher
26cb89fcdd r5765: remove unused var
metze
(This used to be commit a8f7c3e59f35127b51d4afc551b71f21886f4565)
2007-10-10 13:11:01 -05:00
Stefan Metzmacher
e90c904a5f r5764: add support for embedded ref pointers
metze
(This used to be commit 112043b1809a96b1a39ade71ea2885c0d792c79f)
2007-10-10 13:11:01 -05:00
Jelmer Vernooij
a2aa220709 r5427: NTSTATUS is treated by pidl as a 'real' scalar now.
(This used to be commit fa97059d000859b3d0192ed4a0135770888aba6f)
2007-10-10 13:10:45 -05:00
Andrew Tridgell
a6878f6c6e r5414: - added libcli/wins/, a basic client library for WINS replication
- added a new IDL type "udlongr", which is like udlong, but with the
  two uint32 halves reversed

- modified the winsrepl.idl to cope with a wider range of packets
(This used to be commit bc8d60c918f2e268d591aac464fc6a78c38a4cf9)
2007-10-10 13:10:43 -05:00
Jelmer Vernooij
ff6e58a7c4 r5376: ORPC is NDR specific, so move it to ndr.pm.
Get rid of register_enum/register_bitmap, etc. (use list of
types in ndr.pm instead)
(This used to be commit efc2e41b8df3a0171cca57291929fb63760c1662)
2007-10-10 13:09:48 -05:00
Jelmer Vernooij
2f8478b27d r5363: - ndr_%_ptr -> ndr_%_unique_ptr
- ndr_%_relative% -> ndr_%_relative_ptr%
- Change pointer_default() default to "unique"
  (DCE uses "ptr" as default, MIDL doesn't follow the standard and uses "unique")
(This used to be commit 53b4ecbcc7a8da67cde1377de6f24a3de6d229e3)
2007-10-10 13:09:46 -05:00
Jelmer Vernooij
51a6f7b227 r5361: Rename some functions, add tests to validator.
(This used to be commit c9d7b88756039a3eb3024c886851e489c46ef67f)
2007-10-10 13:09:46 -05:00
Jelmer Vernooij
632acd9bc7 r5286: Some first steps in making the pidl code somewhat more generic for the
various data types:

Add ndr_flags argument to all ndr push/pull scalar functions
(This used to be commit ab490c0c882bb13de190546c50a0631ecb8255ad)
2007-10-10 13:09:36 -05:00
Andrew Tridgell
9b9c23b19b r5155: define ipv4address as a based IDL type, mapped to a "const char *" in
the header, and defined on the wire as a 4 byte network byte order
IP. This means the calling code doesn't have to worry about network
byte order conversions.
(This used to be commit 72048e37179dd5b9ada0c5280d2f0d8c23d1a17d)
2007-10-10 13:09:28 -05:00
Stefan Metzmacher
4c6bcb0c05 r5139: fix types
metze
(This used to be commit 8507a57b88c6acce84d9ccc580e17c7f96c6d7af)
2007-10-10 13:09:26 -05:00
Andrew Tridgell
aa985bdee0 r5118: added support for node status replies in nbtd. nmblookup -S now works against Samba4.
Also added support for the '*' wildcard name
(This used to be commit 2dd7ccf72444db668fa970c3a95de1448baea224)
2007-10-10 13:09:24 -05:00
Andrew Tridgell
1e42cacf6a r5036: changed HYPER_T to the more standard "hyper"
(This used to be commit 1d1a9c11ee681540ef8a1029409bb24fc26f976c)
2007-10-10 13:09:15 -05:00
Andrew Tridgell
3dd17f1288 r5034: - added a type mapping function in pidl, so the type names in our IDL
files don't need to match the type names in the generated headers

- with this type mapping we no longer need definitions for the
  deprecated "int32", "uint8" etc form of types. We can now force
  everyone to use the standard types int32_t, uint8_t etc.

- fixed all the code that used the deprecated types

- converted the IDL types "int64" and "uint64" to "dlong" and
  "udlong". These are the 4 byte aligned 64 bit integers that
  Microsoft internally define as two 32 bit integers in a
  structure. After discussions with Ronnie Sahlberg we decided that
  calling these "int64" was confusing, as it implied a true 8 byte
  aligned type

- fixed all the cases where we incorrectly used things like
  "NTTIME_hyper" in our C code. The generated API now uses a NTTIME for
  those. The fact that it is hyper-aligned on the wire is not relevant
  to the API, and should remain just a IDL property
(This used to be commit f86521677d7ff16bdc4815f9524e5286026f10f3)
2007-10-10 13:09:15 -05:00
Andrew Tridgell
ea923fb4a2 r4885: added a new NBT client library. Features include:
- structures defined using IDL in nbt.idl
 - build around our events structure, and talloc
 - fully async
 - supports all NBT packet fields as per rfc1002
 - easy interfaces for name query and status

For the moment there are just a couple of test functions in
namequery.c, test_name_query() and test_name_status(). These will be
removed when we hook the new library into libcli/ fully

The new library will also be a fairly good basis for a nbt
server. Although it can't be a server as-is, I wrote it with the needs
of a server in mind (for example, extremely scalable idtree based
packet handling)
(This used to be commit ae7e625bfa4b4a3ee32c64566064b6a4c84ee4b9)
2007-10-10 13:09:01 -05:00
Stefan Metzmacher
945180f676 r4676: NTTIME_1sec is a standard NTTIME for the calling code
as it's already converted in the pull/push code

metze
(This used to be commit 0d2286ba56fa8d25244a5554e75b5be24eba28b0)
2007-10-10 13:08:41 -05:00
Andrew Bartlett
462ef44745 r4673: Fix the IDL for the QuerySecret LSA call.
This call uses a new IDL type, NTTIME_hyper.  This is 8-byte aligned,
as the name suggests.

Expand the QuerySecret LSA calls in RPC-SAMLOGON and RPC-LSA, to
validate the behaviour of times, and of the old secrets.

Thanks to tridge for spotting the use of HYPER!

Andrew Bartlett
(This used to be commit 1fed79cb0f2ae7940639d08ef99576559d4cd06e)
2007-10-10 13:08:40 -05:00
Stefan Metzmacher
66af8726e5 r4557: support for [flags()] on typedef enum|bitmap
NDR_PAHEX is handled by ndr_print_enum() now

metze
(This used to be commit c3b2d2cca37193fead0df1a8808c3ffcd5180a89)
2007-10-10 13:08:27 -05:00
Stefan Metzmacher
d0da601ff7 r4535: add full support for
typedef bitmap {
    FLAG1 = 0x01
} fooflags;

typedef struct {
    fooflags flags;
}

metze
(This used to be commit 052a7d4f9a3a178149c65a616fdfd87152dff7eb)
2007-10-10 13:08:19 -05:00
Andrew Tridgell
8448dd6ea0 r4519: added the enum print function in ndr_basic.c
(This used to be commit 29955004aa256d5ac27b941f48384ab97ff5e4b8)
2007-10-10 13:08:17 -05:00
Stefan Metzmacher
87d5e061e0 r4102: more uint64 vs HYPER_T fixes
NOTE:
 [u]int64 uses 4 Byte alignment
 and HYPER_T uses 8 Byte alignment

metze
(This used to be commit 717454eb2fd2bf90e67074acefdae5304cd7433f)
2007-10-10 13:06:26 -05:00
Stefan Metzmacher
3558d8b40d r3997: fix STR_CHARLEN pull case
metze
(This used to be commit 623411f74ee766dee2170949b118216387779929)
2007-10-10 13:06:12 -05:00
Stefan Metzmacher
e900618654 r3972: use GUID_* naming context and move GUID_* functions to one place
metze
(This used to be commit 523e6acf4fec5d4946fa7c0c89f40d7d712c9f3a)
2007-10-10 13:06:09 -05:00