summaryrefslogtreecommitdiffstats
path: root/source/include/client.h
Commit message (Collapse)AuthorAgeFilesLines
* Ok - this is a *BIG* change - but it fixes the problems with static stringsJeremy Allison2000-07-271-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | in the RPC code. This change was prompted by trying to save a long (>256) character comment in the printer properties page. The new system associates a TALLOC_CTX with the pipe struct, and frees the pool on return of a complete PDU. A global TALLOC_CTX is used for the odd buffer allocated in the BUFFERxx code, and is freed in the main loop. This code works with insure, and seems to be free of memory leaks and crashes (so far) but there are probably the occasional problem with code that uses UNISTRxx structs on the stack and expects them to contain storage without doing a init_unistrXX(). This means that rpcclient will probably be horribly broken. A TALLOC_CTX also needed associating with the struct cli_state also, to make the prs_xx code there work. The main interface change is the addition of a TALLOC_CTX to the prs_init calls - used for dynamic allocation in the prs_XXX calls. Now this is in place it should make dynamic allocation of all RPC memory on unmarshall *much* easier to fix. Jeremy.
* first pass at merging rpcclient from TNG to HEAD. You can get aGerald Carter2000-07-031-0/+2
| | | | | | | | | | | | | | semi-connection and a rpcclient prompt, but no functionality there yet. Will be a few more days on that. The changes to the header files were minor. A few struct's and a few additional fields to existing ones. No deletions. **minimal change necessary** :-) Well, maybe not minimal, but I tried. All other programs compile, link and run ok from what I can tell so I don;t think I broke anything. --jerry
* YIPEE!!!!!Andrew Tridgell2000-04-301-0/+1
| | | | | | | | | | | We finally have a perfect emulation of Microsoft wildcard matching. The routine ms_fnmatch() does wildcard matching with all MS wildcards (including the unicode wildcards), and masktest against a NT4 workstation with hundreds of thousands of random exmaples has not found a single error. amazingly it is only about 60 lines of code, but it has taken us years to get it right. I didn't sleep much last night :)
* simple mods to add msrpc pipe redirection. default behaviour: fall backLuke Leighton2000-01-031-15/+0
| | | | to using internal msrpc code in smbd.
* first pass at updating head branch to be to be the same as the SAMBA_2_0 branchAndrew Tridgell1999-12-131-16/+27
|
* ABOUT TIME!!!!!!!!Luke Leighton1999-12-081-33/+3
| | | | | | | | | | | | | | | damn, this one is bad. started, at least two days ago, to add an authentication mechanism to the smbd<->msrpc redirector/relay, such that sufficient unix / nt information could be transferred across the unix socket to do a become_user() on the other side of the socket. it is necessary that the msrpc daemon inherit the same unix and nt credentials as the smbd process from which it was spawned, until such time as the msrpc daemon receives an authentication request of its own, whereupon the msrpc daemon is responsible for authenticating the new credentials and doing yet another become_user() etc sequence.
* starting "connection reuse" system in smb-agent. added version numberLuke Leighton1999-12-031-0/+1
| | | | which isn't actually used right now :-)
* cool! a unix socket smb redirector. code based on smbfilter andLuke Leighton1999-12-031-0/+1
| | | | | | | | 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.
* first attempt at getting \PIPE\NETLOGON working. it's pretty horrible.Luke Leighton1999-11-291-3/+0
|
* further abstraction involving client states. main client-side codeLuke Leighton1999-11-271-0/+2
| | | | | is pretty much independent of SMB client states, which will make it easier to add other transports.
* ok. *whew*. this is the first completed part of the restructure.Luke Leighton1999-11-241-6/+14
| | | | | | | | | | | | 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.
* you know what? this sort of thing makes me laugh. hmm, what functionsLuke Leighton1999-11-211-0/+2
| | | | | | | | | | | | | | | | | | | | 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);
* improving authentication code (tidyup).Luke Leighton1999-06-291-8/+19
|
* Putting back the -p flag in smbclient.Richard Sharpe1999-01-251-0/+1
| | | | | However, it seems that the -s flag in smbclient is also ignored :-(
* removed nt_pipe_fnum from struct cli_state. need to be able to callLuke Leighton1998-12-071-1/+0
| | | | | | LsaLookupSids etc from within SamrQueryAliasMembers, for example. fnum is now a parameter to client functions. thanks to mike black for starting the ball rolling.
* .cvsignore: Removed old entries.Herb Lewis1998-11-121-0/+9
| | | | | | | | | | | | client/client.c: include/client.h: Added some debug messages that the old client used to generate. These are needed to make scripts such as 'findsmb' work - there may be other changes to keep backwards output compatibility. Do we need a -old-client-compat argument ? libsmb/clientgen.c: Fixed crash bug where malloc'ed data wasn't being cleared - corrupted malloc chains. web/swat.c: John's changes to get rid of "ghost" table entries.
* Makefile.in: Removed rpc_server/srv_ldap_helpers.c per J.F.'s instructions.Jeremy Allison1998-11-091-1/+1
| | | | | | | | | | | | | client/client.c: client/clitar.c: include/client.h: smbwrapper/smbw_dir.c: smbwrapper/smbw_stat.c: smbwrapper/smbw.c: lib/util.c: Converted all use of 'mode' to uint16. smbd/quotas.c: Fixed stupid comment bug I put in there :-(. printing/printing.c: Fix from J.F. to new code. Jeremy.
* volker was concerned about unique inode numbers and smbsh. This set ofAndrew Tridgell1998-10-241-9/+9
| | | | | | changes uses the unique index number from a SMB_QUERY_FILE_ALL_INFO to try to provide inode numbers. If it is 0 then use the hash of the filename as before.
* bug-fixing against:Luke Leighton1998-10-151-0/+2
| | | | | | | | | | | | | | | | | | AS/U: it returns dce/rpc "first" and "last" bits _clear_ in a bind/ack response, when they should be set in a (small) packet. they also, in the bind/ack do not set a secondary address string at all, so we can't check against that... Win95: client-side dce/rpc code is a bit odd. it does a "WaitNamedPipeState" and has slightly different pipe-naming (\PIPE\LANMAN is joined by \PIPE\SRVSVC, \PIPE\WINREG etc whereas nt just has \PIPE\LANMAN and \PIPE\). Win95-USRMGR.EXE: added LsaOpenPolicy (renamed existing to LsaOpenPolicy2). added SamrConnect (renamed existing to SamrConnect2).
* dce/rpcLuke Leighton1998-10-141-0/+1
|
* dce/rpcLuke Leighton1998-10-091-1/+1
|
* dce/rpcLuke Leighton1998-10-081-48/+53
|
* added support for printing via smbwrapperAndrew Tridgell1998-10-041-2/+13
| | | | | | You can print using "cp filename /smb/SERVER/PRINTER/jobname" You can list the current printqueue using ls
* set a default 16k client buffer sizeAndrew Tridgell1998-10-041-0/+4
|
* modified cli_read() and cli_write() to issue multiple outstandingAndrew Tridgell1998-10-041-0/+1
| | | | | | | | | read/write requests for large reads. up to max_mux requests may be outstanding. This gives _much_ better throughput and should allow smbsh to saturate just about any network. this is an implementation of the "fast SMB" method I described on the CIFS list a couple of months back.
* added capabilities ab win95 fields to client structure. Used forAndrew Tridgell1998-10-031-0/+2
| | | | detecting win95 server for bug handling
* a couple of mode for smbwrapperAndrew Tridgell1998-10-021-1/+1
|
* Got very strict about the differences and uses ofJeremy Allison1998-09-291-4/+4
| | | | | | | uid_t, gid_t and vuid. Added sys_getgroups() to get around the int * return problem. Set correct datatypes for all uid, gid and vuid variables. Jeremy.
* Changes to test in configure if capabilities are enabled on a system.Jeremy Allison1998-09-281-1/+29
| | | | | | | | | | Changes to get Samba to compile cleanly with the IRIX compiler with the options : -fullwarn -woff 1209,1174 (the -woff options are to turn off warnings about unused function parameters and controlling loop expressions being constants). Split prototype generation as we hit a limit in IRIX nawk. Removed "." code in smbd/filename.c (yet again :-). Jeremy.
* Moved the extra struct definitions Luke added to smb.h into rpcclient.hJeremy Allison1998-09-251-0/+79
and client.h. They are still included from smb.h so nothing should change (or break) but this keeps the new definitions easier to maintain. This is similar to what I did with ntdomain.h Jeremy.