summaryrefslogtreecommitdiffstats
path: root/source/rpc_client
Commit message (Collapse)AuthorAgeFilesLines
* cool! a unix socket smb redirector. code based on smbfilter andLuke Leighton1999-12-032-2/+4
| | | | | | | | ideas from ssh-agent. the intent is to be able to share smb sessions using cli_net_use_add() across multiple processes, where one process knows the target server name, user name and domain, but not the smb password.
* new get_any_dc_name() function allows lookups of trusted domains fromLuke Leighton1999-12-021-0/+5
| | | | | | | | | | | | | | | lp_trusted_domains() parameter, so trusted domain logins should work, right, if you put user = TRUSTED_DOMAIN\NTuser in "domain name map", right? right - as _long_ as you're not using NTLMv2, because the damn NT username gets mapped to the damn unix name too early, and NTLMv2 challenge-responses are based on the client's user name, client's domain name, client's host name etc damn etc. so it becomes necessary to stop using char* username because this allows for massive amounts of confusion as to which username is being referred to. the underlying unix username on the local unix system that is associated with the smbd process that represents the NT username? or the NT username itself?
* cleaning up: removing those horrible references to server listLuke Leighton1999-12-024-131/+14
| | | | | functions (cli_net_use_addlist()). needed originally because there was no get_dc_any_name() function.
* default SID map now reads in "trusted domains" from smb.conf.Luke Leighton1999-12-021-3/+9
|
* improved enumdomains added -i option.Luke Leighton1999-12-021-18/+18
|
* clearing up connection-related stuff. password credentials were messingLuke Leighton1999-12-021-1/+3
| | | | | | | up. added a complicated prompt which i don't like, but it tells you domain\user@hostname$
* more cli_session_setup() calls. what the heck are these doing???Luke Leighton1999-12-011-0/+44
| | | | | | | they should all be replaced with cli_establish_connection(). created cli_use_wait_keyboard() which waits on multiple cli_states and swallows session keepalives.
* damn, that took a while. nt login password was being stored incorrectlyLuke Leighton1999-12-012-9/+8
| | | | in private .mac file (oops). ntlogin test now works.
* fixing joining to domain plus something weird going down with nt logins...Luke Leighton1999-12-014-19/+9
|
* improving createuser account command to be able to add workstationsLuke Leighton1999-12-013-13/+134
| | | | and then set a default random password.
* 1) when no domain used in ntlogin test command, should use default oneLuke Leighton1999-12-011-15/+32
| | | | | | | | | | | | | | from previous lsaquery command. over-ridden from DOMAIN\username 2) initialisation of cli_state is a little more specific: sets use_ntlmv2 to Auto. this can always be over-ridden. 3) fixed reusage of ntlmssp_cli_flgs which was being a pain 4) added pwd_compare() function then fixed bug in cli_use where NULL domain name was making connections multiply unfruitfully 5) type-casting of mallocs and Reallocs that cause ansi-c compilers to bitch
* sys_select added one more argument (read, write selectors).Luke Leighton1999-12-012-3/+31
|
* added failed connections to the net use array, even though they'd beenLuke Leighton1999-11-301-6/+14
| | | | freed / cleaned up. oops, dat bad, cos they get freed again when u quit.
* ok. this is where it gets interesting. client states are now maintainedLuke Leighton1999-11-301-2/+29
| | | | | | by cli_net_use_add() and cli_net_use_del(). MSRPC connections are established with cli_connection_init(), and automatically unlinked with cli_connection_unlink. client states are _reused_ by cli_connection_init.
* bug-fixLuke Leighton1999-11-292-3/+3
|
* this is going to sound _really_ weird, ok, but i had to implementLuke Leighton1999-11-293-64/+378
| | | | equivalents of NetUseAdd and NetUseDel!
* sam sync - one of the files that use multiple connection server listLuke Leighton1999-11-291-16/+2
| | | | to \PIPE\NETLOGON.
* attempting to resolve the issue that multiple servers often specified inLuke Leighton1999-11-292-6/+64
| | | | parameters to connect to \PIPE\NETLOGON.
* ok. got ntlogin command working. argh, it maintains a connection toLuke Leighton1999-11-291-36/+95
| | | | | | the remote machine, because i don't know what to _do_ with it!!!! argh!!!
* first attempt at getting \PIPE\NETLOGON working. it's pretty horrible.Luke Leighton1999-11-296-241/+408
|
* cool! spooljobs works! this surprised me very much :-) helped toLuke Leighton1999-11-271-2/+2
| | | | specify \PIPE\spoolss instead of \PIPE\lsarpc...
* well, i stuffed up the spooler commands.Luke Leighton1999-11-271-17/+46
|
* moved at command over to new abstract connection system. matthew, youLuke Leighton1999-11-271-15/+49
| | | | initialised dest_wks _after_ using it in at_soon() :-) so i fixed this :)
* moved browser command brsinfo over to new abstracted connectionLuke Leighton1999-11-271-5/+13
|
* this one's a handle-based one (missed in the first round).Luke Leighton1999-11-271-12/+23
|
* removed do_ prefix from srvsvc APILuke Leighton1999-11-271-7/+7
|
* updated \PIPE\wkssvc commands to use new abstracted connection system.Luke Leighton1999-11-271-5/+12
| | | | | modified resolve_srv_name() to return dest host of *SMBSERVER if server name is \\ip.add.ress.format
* using "abstracted" cli_connection, got \PIPE\srvsvc commands up and runningLuke Leighton1999-11-271-53/+104
| | | | again.
* further abstraction involving client states. main client-side codeLuke Leighton1999-11-276-156/+208
| | | | | is pretty much independent of SMB client states, which will make it easier to add other transports.
* enhanced samuser command to do same thing as enumusers command (-g -u -a)Luke Leighton1999-11-271-34/+117
| | | | except with only one user. done by sharing same code.
* whoa. _major_ restructure of rpcclient. fixed some buuugs, created a few.Luke Leighton1999-11-263-6/+50
| | | | | | found out that getopt() _must_ have optind set to 0 before reuse. still haven't decided what to do with the net* api yet...
* this file manages client states associated with handles.Luke Leighton1999-11-261-0/+154
|
* previous commit added an abstraction function that didn't even haveLuke Leighton1999-11-251-67/+18
| | | | | struct cli_state, uint16 fnum into the code: rpc_hnd_api_req(). modified cli_lsarpc.c to use this. the rest is const issues.
* cool! completed a samr* API that _would_ look like an msdn samr* api...Luke Leighton1999-11-254-438/+273
| | | | | | if microsoft bothered to publish it. actually, there are good reasons for not publishing it: people might write programs for it, and then those programs wouldn't work on nt5, for example...
* registry API moved over to new format. reg_connect() is the top-levelLuke Leighton1999-11-241-27/+175
| | | | | | function, which takes \\server_name. tested a _few_ functions. found that regcreatekey receives a Fault PDU.
* service control manager API completed. svcenum -i works, but does notLuke Leighton1999-11-241-18/+80
| | | | do so twice. possible memory corruption, revolving around getopt().
* ok. *whew*. this is the first completed part of the restructure.Luke Leighton1999-11-244-17/+22
| | | | | | | | | | | | verified that lsaquery, lsalookupsids work, and found some bugs in the parameters of these commands :-) soo... we now have an lsa_* api that has the same arguments as the nt Lsa* api! cool! the only significant coding difference is the introduction of a user_credentials structure, containing user, domain, pass and ntlmssp flags.
* first stages of removing struct cli_state* and uint16 fnum from allLuke Leighton1999-11-244-84/+128
| | | | | | | | | msrpc client code. the intent is to hide / abstract / associate connection info behind policy handles. this makes the msrpc functions look more and more like their nt equivalents. who-hou!
* rewrote policy handle code to be generic (it's needed for client-side too)Luke Leighton1999-11-241-2/+4
| | | | attempted to fix regsetsec command
* attempted a svcset command. password is encrypted / messed up, thereforeLuke Leighton1999-11-231-31/+43
| | | | command fails.
* oops!!!! wrong command!!!Luke Leighton1999-11-231-0/+58
|
* shuffling msrpc code around so that it can be used independently of rpcclientLuke Leighton1999-11-232-2/+87
|
* you know what? this sort of thing makes me laugh. hmm, what functionsLuke Leighton1999-11-211-1/+1
| | | | | | | | | | | | | | | | | | | | have we got. and what data do we have. hmm.. i wonder what the NTLMv2 user session key can be... hmmm... weell.... there's some hidden data here, generated from the user password that doesn't go over-the-wire, so that's _got_ to be involved. and... that bit of data took a lot of computation to produce, so it's probably _also_ involved... and md4 no, md5? no, how about hmac_md5 yes let's try that one (the other's didn't work) oh goodie, it worked! i love it when this sort of thing happens. took all of fifteen minutes to guess it. tried concatenating client and server challenges. tried concatenating _random_ bits of client and server challenges. tried md5 of the above. tried hmac_md5 of the above. eventually, it boils down to this: kr = MD4(NT#,username,domainname) hmacntchal=hmac_md5(kr, nt server challenge) sess_key = hmac_md5(kr, hmacntchal);
* hmmm... have to add client-side support in domain_client_validate() toLuke Leighton1999-11-211-10/+30
| | | | _use_ user session key.
* moving create user function into msrpc_samr.cLuke Leighton1999-11-211-0/+56
|
* doing a code reshuffle. want to add code to establish trust relationships.Luke Leighton1999-11-203-449/+1606
|
* added \PIPE\browser plus experimental brsinfo command. you wouldn'tLuke Leighton1999-11-191-0/+89
| | | | | believe the XXXX that MIGHT be involved in getting nt5rc2 to join a samba domain...
* added samuserset2 rpcclient command to test ACB_XXX bit-setting onLuke Leighton1999-11-181-4/+93
| | | | | samr opcode 0x25. _yet_ another failed attempt to get nt5rc2 to join a samba domain. what _is_ it with this stuff, dammit?
* updating reg_value_info() parsing code to take BUFFER2 instead of justLuke Leighton1999-11-181-3/+4
| | | | a char*. now copes with multiple types.
* added regqueryval command (experimental) to get reg_io_q_info() andLuke Leighton1999-11-181-4/+3
| | | | | | | | reg_io_r_info() working properly. previously they weren't well understood (well, they were the first of the registry functions i did, back in december 97, ok??? :-) set ntversion to 0x1 in SAMQUERY, so that we reply same as NT4 srv.