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

699 Commits

Author SHA1 Message Date
Andrew Tridgell
9fffd12799 r9338: fixed the winreg IDL to be correct for the EnumKey and EnumValue
calls. The previous IDL was just a workaround for the limitations of
our older rpc infrastructure. Now that Jelmer has added much improved
string support using the charset keyword we can correctly implemenent
the unusual winreg string buffers.

Jelmer, note the little comment I put on winreg_StringBuf() about why
I couldn't use [value()] for the length field.

This also fixes EnumKey() and EnumValue() to use NTTIME fields for the
last_changed_time. I don't know why we were using a pair of uint32's,
as it is just a NTTIME.
(This used to be commit 8354b016122cc4f3cff042b3ada1de07e1614eb7)
2007-10-10 13:33:25 -05:00
Stefan Metzmacher
3be75a4c6d r9240: - move struct security_token to the idl file, with this we can
the ndr_pull/push/print functions for it in the ntacl-lsm module

- fix compiler warnings in the ldap_encode_ndr_* code

metze
(This used to be commit 83d65d0d7ed9c240ad44aa2c881c1f07212bfda4)
2007-10-10 13:31:37 -05:00
Tim Potter
32e76af21a r9239: I think this is the right IDL for the eventlog record. Pidl is
generating incorrect code for arrays of strings here.
(This used to be commit 3b2476e0a00dbd3b552ccde736147e93655732f1)
2007-10-10 13:31:37 -05:00
Tim Potter
d607b4473f r9237: Fix eventlog_Record typedef so it decodes records source and computer
names.  Need to get working with SIDs and extra data.
(This used to be commit 2543f78df61b76295acf6fe4837adefbe08ca5c4)
2007-10-10 13:31:35 -05:00
Jelmer Vernooij
7603394aec r9162: Fix a couple of data types
(This used to be commit 7329dd25f509a5db92ee70713fa0b2a2473ae8cb)
2007-10-10 13:31:26 -05:00
Jelmer Vernooij
97eac1a46a r9161: More etheral parser generator fixes
(This used to be commit b323e83e8df6ba331b3f0b3abe28aa8ddf9127ef)
2007-10-10 13:31:25 -05:00
Stefan Metzmacher
c56befeb62 r9157: fix white spaces
metze
(This used to be commit 475b413cfea03c749535df8e100f0339ffecf590)
2007-10-10 13:31:25 -05:00
Tim Potter
f18657aa59 r9156: Add IDL and test for FlushEventLog() but it always seems to return
NT_STATUS_ACCESS_DENIED.
(This used to be commit f18d1f539e4fd434dfc519e45f4c356c5cd4d73a)
2007-10-10 13:31:25 -05:00
Tim Potter
220686a5c1 r9154: Change eventlog enums to bitmaps.
Fix IDL for ReadEventLogW() function.
(This used to be commit b1b76ad9c428f0941d104e9312aa426c39da7134)
2007-10-10 13:31:24 -05:00
Jelmer Vernooij
4d4691a16b r9150: The ethereal parser generators work now. Thanks to Ronnie Sahlberg for
help with the debugging and comments on the generated code (-:
(This used to be commit 4c165f8ff65b4500d8366b655d6df2a065f35bf5)
2007-10-10 13:31:23 -05:00
Stefan Metzmacher
90a61d99b4 r9149: add support for string arrays in GetPrinterData
metze
(This used to be commit b72062e653b1d87d957f1f10415cdd034cac4bdb)
2007-10-10 13:31:23 -05:00
Andrew Tridgell
31fa87f23b r9146: - enable winreg pipe from ejs
- map the result code from rpc calls into the ejs objects

- treat winreg_String like lsa_String, hiding the length elements
(This used to be commit 2f6311c9a34db46f9a4b1f31e865a373b15702bf)
2007-10-10 13:31:23 -05:00
Tim Potter
d87e1306c5 r9145: Some work on eventlog since jerry is doing some in Samba3. (-:
- Convert to use lsa_String instead of eventlog_String.

 - Copy across some constants.

 - Implement idl and testcase for ClearEventLog() function
(This used to be commit 352b21af3f0a84ee31d0eecaa76abf2134d044de)
2007-10-10 13:31:23 -05:00
Tim Potter
e603a36116 r9130: Fix up awful indentation.
(This used to be commit b3e0baca71ca8116f7a38ff64e655a37406d64b4)
2007-10-10 13:31:19 -05:00
Andrew Bartlett
2af19867d4 r8986: As far as I can tell, given the ldif I get from behind this, we have a
signed NTTIME here.

Andrew Bartlett
(This used to be commit 57b703a9d5c26ad410125b15587a52129a41fb91)
2007-10-10 13:31:04 -05:00
Andrew Bartlett
b30f0b0391 r8855: Share this enum (describing the SamSync databases) between nbt and netlogon.
Andrew Bartlett
(This used to be commit 5e29e1c68c1b1a957419320cef55395ba0fe6b6f)
2007-10-10 13:30:12 -05:00
Jelmer Vernooij
4f3d66b0df r8614: Add COMRESULT/HRESULT scalar type
(This used to be commit 8637a85e6a349cce15a298154500921e9a0183a3)
2007-10-10 13:29:44 -05:00
Andrew Tridgell
7ee2babcfe r8587: - fixed ref allocation in irpc replies
- make every irpc server support the irpc_uptime() call
(This used to be commit eee90448268b9f673cc43076ad87529aa80d17ae)
2007-10-10 13:29:42 -05:00
Andrew Tridgell
a32fe0f293 r8577: added management calls to list current tree connects
(This used to be commit 658befc1e4df44bee1f365a730951001f0f36640)
2007-10-10 13:29:40 -05:00
Andrew Tridgell
25428433e3 r8574: added server side irpc calls for listing the current sessions
(This used to be commit 391cfe3c9645a19f8f5ff5c11b1ac03ee0b10f8f)
2007-10-10 13:29:39 -05:00
Jelmer Vernooij
762a6a14e8 r8559: Couple of (D)COM updates:
- Fixes annoying array-of-pointers bug in pidl.
 - No longer "inherit" alignment thru subcontexts
 - Use "Image Object" as example DCOM object, rather then the "My Computer" object, which is built-in and can't be accessed remotely as far as I can see
(This used to be commit bd706d496405d274b68c1ee560211837a8e63009)
2007-10-10 13:29:38 -05:00
Stefan Metzmacher
4459d16718 r8503: remove useless line
metze
(This used to be commit ec31739642a89fb62930a3b8c0fa870aaad5c476)
2007-10-10 13:29:32 -05:00
Andrew Tridgell
970ff9ba8d r8480: fixed a typo
(metze, I assume this was just a typo? it broke the build on oehmesrs6k)
(This used to be commit aa68459fe7579b385dd1824680ec641052029a1e)
2007-10-10 13:23:07 -05:00
Stefan Metzmacher
65b8c54fc2 r8476: add a note that DsAddEntry is very incomplete yet
metze
(This used to be commit 53b91754107b790e2349a97069ea03a7bd6ff712)
2007-10-10 13:23:07 -05:00
Stefan Metzmacher
129eedc66b r8474: add some more attid mappings
for the password fields

metze
(This used to be commit 8454d32eb2f0aa4287956951c2550f060f7f10b3)
2007-10-10 13:23:07 -05:00
Stefan Metzmacher
59d17eee38 r8375: - move from netr_StringLarge to lsa_StringLarge
- we need to use lsa_StringLarge in lsa_DnsDomainInfo, to make windows clients happy

metze
(This used to be commit 044d18f85f82b4ab5d71a6ae366052af0dbe8e7e)
2007-10-10 13:20:13 -05:00
Stefan Metzmacher
e87f589f00 r8368: the type filed depends on the user being present or not
call ndr_print for each call

metze
(This used to be commit 0a07e4ef8d869d35ceb0761495e367077f2361ba)
2007-10-10 13:20:12 -05:00
Andrew Tridgell
39b1d2b4c4 r8286: it makes more sense to combine the refresh count with the register count, as they
are really the same packet (you can register with a refresh)
(This used to be commit 5006528554a70c25fea15966d68b4002850ebb3e)
2007-10-10 13:19:31 -05:00
Andrew Tridgell
146c854109 r8268: added the 'needed' logic to ehs generation, so we don't generate
functions we don't need. That is a lot of functions, as ejs is only
client side, so it only needs push functions for [out] vars, and pull
functions for [in] vars

added irpc and srvsvc IDL to list of available pipes.
(This used to be commit c7a9dbe70a39156a20e56b4dd732fd838437eecd)
2007-10-10 13:19:28 -05:00
Andrew Tridgell
7efeb8f451 r8256: - allow rpc calls from non-command line ejs contexts by creating a set
of null credentials to use if cmdline_credentials is not setup

- hide the length and size elements of a lsa_String from js scripts,
  so you can use a lsa_String just as an ordinary string without
  knowing its a structure. We won't do this with all structures, just
  a few core ones that are used often enough to warrant it.

- make sure returned ldb arrays have a length property
(This used to be commit 12d2092dd8668de41776132ccbcd634790c371a9)
2007-10-10 13:19:26 -05:00
Andrew Bartlett
e75c7ff39f r8252: Steal metze's thunder, and prove that with a few small tweaks, we can
now push/pull a sample PAC, and still have the same byte buffer.
(Metze set up the string code, and probably already has a similar
patch).

Unfortunetly win2k3 still doesn't like what we provide, but every step helps.

Also use data_blob_const() when we are just wrapping data for API
reasons.

Andrew Bartlett
(This used to be commit e7c8076fc1459ff2ccefdaf0b091d04ee6137957)
2007-10-10 13:19:25 -05:00
Andrew Bartlett
c0a78453a7 r8250: More PAC work. We now sucessfully verify the KDC signature from my DC
(I have included the krbtgt key from my test network).

It turns out the krbtgt signature is over the 16 (or whatever,
enc-type dependent) bytes of the signature, not the entire structure.

Also do not even try to use Kerberos or GSSAPI on an IP address, it
will only fail.

Andrew Bartlett
(This used to be commit 3b9558e82fdebb58f240d43f6a594d676eb04daf)
2007-10-10 13:19:25 -05:00
Andrew Tridgell
f55b2b9610 r8233: - added support for more base types in pidl ejs
- added auto generation of a header with prototypes for public ejs functions

- make public functions non-static

- fixed allocation of fixed sized arrays

- added 'noejs' flag indicating that a typedef will be handled manually by ejs

- added manual functions for sid and GUID, so they show up as nice
  strings in ejs scripts

This allows ejs to bring in samr, security, lsa and misc IDL functions
(This used to be commit a8cb2dbdcc2871090a26f580f67db8f0636d1e7e)
2007-10-10 13:19:23 -05:00
Stefan Metzmacher
0b92507760 r8232: remove samr_String and netr_String as they are the same as lsa_String
metze
(This used to be commit e601042c07d7b6eed0dc34e5b136d9266b8a0f81)
2007-10-10 13:19:22 -05:00
Stefan Metzmacher
3d3a86f95d r8227: add STR_LARGE_SIZE flag, to support strings where the size is length+1,
metze
(This used to be commit cdd03fe87d0120ab3e18566bfc20df5955f9fb3c)
2007-10-10 13:19:22 -05:00
Stefan Metzmacher
06a4e5688e r8223: fix the values of nt_version and type we reply in the server code,
also name the struct like the nt_version number

metze
(This used to be commit 1e3af5cc1f68b7fa54b8ba77ed9836a619a69436)
2007-10-10 13:19:21 -05:00
Tim Potter
372f3fae88 r8171: According to Samba 3 and Ethereal, the winreg_OpenUnkown stuff is
actually a uint16 * without the [string] attribute, a la the the
system_name argument to samr_Connect().

Initialising the pointer to NULL is sufficient and we still pass the
RPC-WINREG test against win2k3.
(This used to be commit 407d962dacf7c833b36cb739e48fe97226968a34)
2007-10-10 13:19:16 -05:00
Stefan Metzmacher
a7fd68286a r8168: after testing I saw that w2k3 uses unique pointers on the mgmt pipe
that also matches the spec at http://www.opengroup.org/onlinepubs/9629399/apdyq.htm

metze
(This used to be commit 117e678bde040b9294c2fff473ececd0d7e3a1cc)
2007-10-10 13:19:16 -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
a33178fc72 r8156: I found out that the unknown[2] field of the unknown[4] array is a length too,
it's always 16 bytes smaller than the size in the PAC_BUFFER

we now dump the blob's on LOCAL-PAC with -d 10

metze
(This used to be commit 4ef721ce53539ac56ca8ac4d601f512149ca7283)
2007-10-10 13:19:13 -05:00
Stefan Metzmacher
148235a009 r8148: - make the PAC generation code a bit more readable and add some outof memory checks
- move to handmodified pull/push code for PAC_BUFFER
  to get the _ndr_size field and the subcontext size right

- after looking closely to the sample w2k3 PAC in our torture test (and some more in my archive)
  I found out that the first uint32 before the netr_SamInfo3 was also a pointer,
  (and we passed a NULL pointer there before, so I think that was the reason why the windows clients doesn't want our PAC)

  w2k3 uses this for unique pointers:

  ptr = ndr->ptr_count * 4;
  ptr |= 0x00020000;
  ndr->ptr_count;

- do one more pull/push round with the sample PAC

metze
(This used to be commit 0eee17941595e9842a264bf89ac73ca66cea7ed5)
2007-10-10 13:19:13 -05:00
Andrew Bartlett
dbd2688c90 r8110: More PAC work. I still can't get WinXP to accept the PAC, but we are
much closer.

This changes PIDL to allow a subcontext to have a pad8 flag, saying to
pad behind to an 8 byte boundary.  This is the only way I can explain
the 4 trainling zeros in the signature struct.

Far more importantly, the PAC code is now under self-test, both in
creating/parsing our own PAC, but also a PAC from my win2k3 server.
This required changing auth_anonymous, because I wanted to reuse the
anonymous 'server_info' generation code.

I'm still having trouble with PIDL, particulary as surrounds value(),
but I'll follow up on the list.

Andrew Bartlett
(This used to be commit 50a54bf4e9bf04d2a8e0aebb3482a2ff655c8bbb)
2007-10-10 13:19:09 -05:00
Stefan Metzmacher
ccaf752e35 r8054: add OSVersion, OSVersionEx, DNSMachineName PrintServerData
metze
(This used to be commit 47781fccbc9a4fc3867e4c3959a17765c7e4dc71)
2007-10-10 13:19:03 -05:00
Andrew Tridgell
4354bebda7 r8053: requests from mmc show that the auth info for a bind should be 4 byte aligned, not
8 byte aligned
(This used to be commit c112a2b23e6cd2c55fbb7e8096a7c523a91d6814)
2007-10-10 13:19:03 -05:00
Stefan Metzmacher
88df3c81ee r8050: - make use of more [value()] properties
- the out subcontext's need to have a fixed size of r->in.offered,
  to make windows clients happy

metze
(This used to be commit 054e1ca434b2f81de199eeb41cb6233524fc5779)
2007-10-10 13:19:02 -05:00
Jelmer Vernooij
d6acd2fb16 r8012: Add UUID for NDR64 transfer syntax.
(This used to be commit 6a3f62222285fa091968bb025edfe21fcf5dfb86)
2007-10-10 13:18:58 -05:00
Andrew Bartlett
ddffc922df r8001: Also fill in the krbtgt checksum, and make sure to put the right
checksum in the right place...

Andrew Bartlett
(This used to be commit 90d0f502da20add6784c883b2085cde519604933)
2007-10-10 13:18:57 -05:00
Andrew Bartlett
9a7481bcfe r7993: Further work on the Krb5 PAC.
We now generate the PAC, and can verifiy both our own PAC and the PAC
from Win2k3.

This commit adds the PAC generation code, spits out the code to get
the information we need from the NETLOGON server back into a auth/
helper function, and adds a number of glue functions.

In the process of building the PAC generation code, some hints in the
Microsoft PAC specification shed light on other parts of the code, and
the updates to samr.idl and netlogon.idl come from those hints.

Also in this commit:

The Heimdal build package has been split up, so as to only link the
KDC with smbd, not the client utils.

To enable the PAC to be veified with gensec_krb5 (which isn't quite
dead yet), the keyblock has been passed back to the calling layer.

Andrew Bartlett
(This used to be commit e2015671c2f7501f832ff402873ffe6e53b89466)
2007-10-10 13:18:57 -05:00
Andrew Tridgell
f04545f5d2 r7872: another place we were relying on the old behaviour of value()
(This used to be commit 25a64f8946274e07ca233751bc745b160ff3e7c1)
2007-10-10 13:18:46 -05:00
Andrew Tridgell
7fc49243f3 r7870: fixed the RPC-SCHANNEL test. It turned out it was my const changes, as
they slightly changed the semantics of value() in pidl, which broke
a optimisation hack in some of our IDL files.

I've changed the idl files to remove the hack for now. Sometime we
need to find a better way to handle these :-)
(This used to be commit 765f75ea630b13b1605409ff47a52cc11a1e496b)
2007-10-10 13:18:45 -05:00