1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-04 17:47:26 +03:00

267 Commits

Author SHA1 Message Date
Andrew Tridgell
8369293090 fixed a segv in RPC-* when debug level > 2
thanks to Kai for spotting this!
(This used to be commit 0fc42c33d3b0930fdf1dc71a407f4fcaac69d82d)
2003-12-17 21:37:34 +00:00
Tim Potter
a2ec4b990d Fix typo.
(This used to be commit 3f1b781c5659361d7e9cc3ab2072e1462d40df55)
2003-12-17 03:38:06 +00:00
Andrew Tridgell
7efa19cd22 added a smb.conf flag "rpc big endian" that tells our rpc server to
send packets in bigendian format.
(This used to be commit 44df662960e662a55a9f27627f838771503a7a59)
2003-12-17 02:06:44 +00:00
Andrew Tridgell
6ba28732ec fixed the RPC-MGMT and RPC-SCANNER tests to work with the new
dcerpc_binding_string code
(This used to be commit 1fa68c18facfb6c96d5a274cfd9560cb4b2956f6)
2003-12-16 10:57:17 +00:00
Andrew Tridgell
ecc2519594 no longer require the pipe name or tcp port number to be the first
option in the ncacn_* syntax
(This used to be commit 74f36d32bb14e94a80e1963cbc95f8fba3f23335)
2003-12-16 10:15:21 +00:00
Andrew Tridgell
24c22aef90 a fairly large commit!
This adds support for bigendian rpc in the client. I have installed
SUN pcnetlink locally and am using it to test the samba4 rpc
code. This allows us to easily find places where we have stuffed up
the types (such as 2 uint16 versus a uint32), as testing both
big-endian and little-endian easily shows which is correct. I have now
used this to fix several bugs like that in the samba4 IDL.

In order to make this work I also had to redefine a GUID as a true
structure, not a blob. From the pcnetlink wire it is clear that it is
indeed defined as a structure (the byte order changes). This required
changing lots of Samba code to use a GUID as a structure.

I also had to fix the if_version code in dcerpc syntax IDs, as it
turns out they are a single uint32 not two uint16s.

The big-endian support is a bit ugly at the moment, and breaks the
layering in some places. More work is needed, especially on the server
side.
(This used to be commit bb1af644a5a7b188290ce36232f255da0e5d66d2)
2003-12-16 09:02:58 +00:00
Andrew Tridgell
8431335ec5 more flexible handling of [] in binding strings
(This used to be commit edc67fffeaee5fe4bbbc6fbd76345d0a9d5b2093)
2003-12-15 03:41:08 +00:00
Andrew Tridgell
71f81d1d3e allow the specification of full dcerpc endpoint binding strings on the
command line. This allows you to (for example) control signing/sealing
of smbtorture RPC sessions
(This used to be commit a73825eb496d5924012ea926fcbac8c956fe081e)
2003-12-15 03:29:55 +00:00
Andrew Tridgell
8f6b3eb1a9 fixed a bug handling multiple PDUs being read from a socket at one
time in the rpc server.

started on the framework for the dcerpc authentication server code
(This used to be commit 74041b6a0a60d792e1b220496d66ec27b9ee6c25)
2003-12-14 01:09:10 +00:00
Andrew Tridgell
340d9b71f9 added a basic dcerpc endpoint mapper to Samba4. Currently only
implements the epm_Lookup() call, I'll add the other important calls
soon. I was rather pleased to find that epm_Lookup() worked first
time, which is particularly surprising given its complexity.

This required quite a bit of new infrastructure:

  * a generic way of handling dcerpc policy handles in the rpc server

  * added type checked varients of talloc. These are much less error
    prone. I'd like to move to using these for nearly all uses of
    talloc.

  * added more dcerpc fault handling code, and translation from
    NTSTATUS to a dcerpc fault code

  * added data_blob_talloc_zero() for allocating an initially zero
    blob

  * added a endpoint enumeration hook in the dcerpc endpoint server
    operations
(This used to be commit 3f85f9b782dc17417baf1ca557fcae22f5b6a83a)
2003-12-13 02:20:40 +00:00
Andrew Tridgell
7ec0ead48a the beginnings of an automated tool for working out IDL properties of
a pipe. I'm not sure how possible this will be without lots of human
intervention, but its an interesting thing to try.
(This used to be commit d5afe7c6a8651457da9438fcf0035c792701ac86)
2003-11-28 08:51:09 +00:00
Andrew Tridgell
c7c9e61987 more epmapper and mgmt magic
protocol 0x1f is interesting - its ncacn_http !
(This used to be commit e3d40e3da6e15407162c1d0a29d2cbe86842228e)
2003-11-27 07:28:46 +00:00
Andrew Tridgell
ab3d728b7e added an rpc scanner. This prints messages like this:
uuid 82273fdc-e32a-18c3-3f78-827929dc23ea  version 0x0000:0x0000  'eventlog'
        24 calls available
        WARNING: local IDL defines 4 calls

when all the WARNINGs are gone then we know we have all the calls :)
(This used to be commit f5821b2468a0c46d0e5590de59562926d746c349)
2003-11-27 05:34:28 +00:00
Andrew Tridgell
61bb3c865c use EPMAPPER_PORT constant instead of 135
(This used to be commit 953ab587dc5a625d0fb557fdcac122a3b2ed0224)
2003-11-27 04:04:31 +00:00
Andrew Tridgell
a9203bf02b a couple of tidyups
* don't try to map the epmapper uuid !

 * some preliminary support for alter context pdus
(This used to be commit f9857e56850cabfac06534fb33ff7a7a04346a9b)
2003-11-27 04:02:15 +00:00
Andrew Tridgell
fca5f78032 use the IDL defined NDR version number
(This used to be commit 00e0c14b76c9b001c7d7b6b18b2cb543a57fe082)
2003-11-26 03:41:06 +00:00
Andrew Tridgell
fffd741a7a added auto-determination of the DCERPC over TCP port number by asking
the servers endpoint mapper
(This used to be commit 4abf5376b00f580eb69196e55a792cc7eb4c9880)
2003-11-26 03:36:17 +00:00