summaryrefslogtreecommitdiff
path: root/source3/libsmb/clientgen.c
AgeCommit message (Collapse)AuthorFilesLines
1998-11-17- group database API. oops and oh dear, the threat has been carried out:Luke Leighton1-49/+150
the pre-alpha "domain group" etc parameters have disappeared. - interactive debug detection - re-added mem_man (andrew's memory management, detects memory corruption) - american spellings of "initialise" replaced with english spelling of "initialise". - started on "lookup_name()" and "lookup_sid()" functions. proper ones. - moved lots of functions around. created some modules of commonly used code. e.g the password file locking code, which is used in groupfile.c and aliasfile.c and smbpass.c - moved RID_TYPE_MASK up another bit. this is really unfortunate, but there is no other "fast" way to identify users from groups from aliases. i do not believe that this code saves us anything (the multipliers) and puts us at a disadvantage (reduces the useable rid space). the designers of NT aren't silly: if they can get away with a user- interface-speed LsaLookupNames / LsaLookupSids, then so can we. i spoke with isaac at the cifs conference, the only time for example that they do a security context check is on file create. certainly not on individual file reads / writes, which would drastically hit their performance and ours, too. - renamed myworkgroup to global_sam_name, amongst other things, when used in the rpc code. there is also a global_member_name, as we are always responsible for a SAM database, the scope of which is limited by the role of the machine (e.g if a member of a workgroup, your SAM is for _local_ logins only, and its name is the name of your server. you even still have a SID. see LsaQueryInfoPolicy, levels 3 and 5). - updated functionality of groupname.c to be able to cope with names like DOMAIN\group and SERVER\alias. used this code to be able to do aliases as well as groups. this code may actually be better off being used in username mapping, too. - created a connect to serverlist function in clientgen.c and used it in password.c - initialisation in server.c depends on the role of the server. well, it does now. - rpctorture. smbtorture. EXERCISE EXTREME CAUTION. (This used to be commit 0d21e1e6090b933f396c764af535ca3388a562db)
1998-11-14automatically uppercase server and share names (win95 won't handleAndrew Tridgell1-0/+1
lowercase share names!) (This used to be commit dddf1d8522707b828cac466c4a9ab2807d098573)
1998-11-14Removed acconfig.h configure configure.in include/config.h.in: Made ↵Jeremy Allison1-3/+3
smbwrapper not made by default. nmbd*: Changed all calls to namestr() to nmbd_namestr() to fix broken FreeBSD include file problem...sigh. Jeremy. (This used to be commit 9ee8f39aed8772a05c203161b4ae6b7d90d67481)
1998-11-12.cvsignore: Removed old entries.Herb Lewis1-1/+17
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. (This used to be commit 3c45a3503ea57d17e98eb3e57514161a5c82e45e)
1998-11-12largely rewrote smbpasswd so that the code is understandable. ThisAndrew Tridgell1-3/+3
should allow us to call a function in swat rather than piping to smbpasswd. while doing this I also fixed quite a few "const char *" versus "char *" issues that cropped up while using const to track down bugs in the code. This led to changes in several generic functions. The smbpasswd changes should be correct but they have not been extensively tested. At least if I have introduced bugs then we should be able to fix them more easily than before. (This used to be commit 713864dd0322ae2ae2d83e333d85be35a7eed4ec)
1998-11-09Makefile.in: Removed rpc_server/srv_ldap_helpers.c per J.F.'s instructions.Jeremy Allison1-13/+13
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. (This used to be commit bacd3e9d2036a804e73644a28fc498f229c8446c)
1998-11-09converted smbclient to use clientgen.c rather than clientutil.cAndrew Tridgell1-35/+199
I did this when I saw yet another bug report complaining about smbclient intermittently missing files. Rather than applying more patches to smbclient it was better to move to the more robust clientgen.c code. The conversion wasn't perfect, I probably lost some features of smbclient while doing it, but at least smbclient should be consistent now. It if fails it should _always_ fail rather than giving people the false impression of a reliable utility. the tar stuff seems to work, but hasn't had much testing as I never use it myself. I'm sure someone will find bugs in my conversion of smbtar.c. It was quite tricky as it did a lot of its own SMB calls. It now uses clientgen.c exclusively. smbclient is still quite messy, but at least it doesn't build its own SMB packets. I haven't touched smbmount as I never use it. Mike, do you want to convert smbmount to use clientgen.c? (This used to be commit e14ca7765ace1b721dad8eca4a527a4e4a8f1ab8)
1998-11-05don't bother trying QFILEINFO/QUERY_FILE_ALL_INFO with win95 as itAndrew Tridgell1-1/+5
totally screws it up, giving garbage for the size fields. (This used to be commit 86f98e0607e8a05ec026b919cc974c1c934b6882)
1998-10-26added a couple more error codes to cli_error()Andrew Tridgell1-0/+6
(This used to be commit b2a7f85d597d4d2a71fd38d76aac0464d53df626)
1998-10-24volker was concerned about unique inode numbers and smbsh. This set ofAndrew Tridgell1-8/+19
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. (This used to be commit 2565ccf9de9d5e80fdb5bcadbc7130faba386d95)
1998-10-19- dce/rpc codeLuke Leighton1-2/+1
- removed debug info in struni2 and unistr2 (security risk) - rpc_pipe function was getting pointer to data then calling realloc *dur* - password check function, the start of "credential checking", user, wks, domain, pass as the credentials (not just user,pass which is incorrect in a domain context) - cli_write needs to return ssize_t not size_t, because total can be -1 if the write fails. - fixed signed / unsigned warnings (how come i don't get those any more when i compile with gcc???) - nt password change added in smbd. yes, jeremy, i verified that the SMBtrans2 version still works. (This used to be commit fcfb40d2b0fc565ee4f66b3a3761c246366a2ef3)
1998-10-19improved session reestablishmentAndrew Tridgell1-36/+82
(This used to be commit 5f96328d32e76785474ffd5cd73f8ddefc46d4f5)
1998-10-19return the resolved IP on a cli_connect() call so it can be cachedAndrew Tridgell1-0/+1
(This used to be commit 4e3f8ef41b8de25dec4c01d5532dca1b567be55a)
1998-10-16- use large buffers for netshareenumAndrew Tridgell1-19/+30
- handle errmoredata a bit better - fix dev type from tconx for smbw (This used to be commit 2f39409dc1ef012a8a7d315572a489d15df186f7)
1998-10-16trans2.h: Added Thursby MAC extension.Jeremy Allison1-0/+8
smbd/trans2.c: Added Thursby MAX extension. libsmb/clientgen.c: Fixed smbtorture lock code. Jeremy. (This used to be commit 514e52e4b4d6c7db7ebe2265e60c77b4f18d11b3)
1998-10-15rpcclient interactive login (with trust account changing if you are root)Luke Leighton1-4/+14
cli_session_setup handles null sessions correctly (This used to be commit 60c0f22a4e84703467006dfe1971384a6294a9aa)
1998-10-10dce/rpcLuke Leighton1-1/+1
(This used to be commit dfb48aab6153e53a5efd1f8ee518375cc584b101)
1998-10-09dce/rpcLuke Leighton1-18/+5
(This used to be commit 8a7ac4a25d177235a98c0f84f97ee50432fb6359)
1998-10-09dce/rpc.Luke Leighton1-2/+3
(This used to be commit e0445419b2d50ae6efef36f4f295ebcfdbf1ad82)
1998-10-09basic client-side ntcreateX function (hard-wired values except filename)Luke Leighton1-0/+44
(This used to be commit caeb99201a1471bd709b4e8f07c57e5caabf0795)
1998-10-08dce/rpcLuke Leighton1-9/+35
(This used to be commit 62fdeef1b79c5c4c9bf0e860881651711bb80b9a)
1998-10-08- don't generate 0 params in tortureAndrew Tridgell1-3/+3
- handle 0 params in ipc.c (This used to be commit c0dc8e87f0d56444a8ddff0817a94065ca295847)
1998-10-08- fixed a bunch of warnings and minor errorsAndrew Tridgell1-1/+1
- got smbtorture to compile - removed %D from some of lukes code - Luke, what is %D? it ain't portable anyway (This used to be commit 91597c12fb593f49b23c7cea5b64dbb89a0428b3)
1998-10-08use 1 second resolution calls if possibleAndrew Tridgell1-2/+5
(This used to be commit 349469221a84658048790d7567b4fcea43c0b759)
1998-10-07do an anonymous login if the username/password is rejected.Andrew Tridgell1-0/+1
(This used to be commit 0ee3e0c62378bdf7a8e145de0727ea85763af95a)
1998-10-06fixed rename error code from NT serversAndrew Tridgell1-0/+1
(This used to be commit e7516901270a4a790a3e346065eb2be8ede16cb3)
1998-10-06implemented unix semantics for rename in smbwrapperAndrew Tridgell1-0/+6
(This used to be commit a5c18f9c82f5f76b00ff29c5668b4f0d3e8d6bd0)
1998-10-05rpcclient srvsvc commands.Luke Leighton1-1/+4
(This used to be commit 1a9a22c657c46648adaa98ac1fe394ce4bce11f0)
1998-10-05got smbwrapper working on IRIX 6.4. Things got a bit tricky,Andrew Tridgell1-1/+1
especially as the headers get the syscall numbers wrong! (This used to be commit a5405f1ab069a3123a819311a87ca84f2c5f0fea)
1998-10-05handle ENOTDIR errno in cli_error()Andrew Tridgell1-0/+2
(This used to be commit f1d82e02ff7f2201de5fb13af4cadec648765017)
1998-10-04- modified resolve_name() to take a name_typeAndrew Tridgell1-1/+1
- cleaned up resolve_name() (split into separate functions for each resolver) - if can't find local master then use #1B name - support listing of foreign workgroups in /smb/ (This used to be commit a4e607c17d1119925c9d0e1d05e0fe81e9a2d1aa)
1998-10-04support NetServerEnum in smbwrapper. You can now do a ls in /smb/ andAndrew Tridgell1-1/+1
it will list all servers in your workgroup. You can set your workgroup with the SMBW_WORKGROUP environment variable. (This used to be commit 64699810e2d94e8648a0a3341b1cc826d4e8bfd9)
1998-10-04use *SMBSERVER convention in smbwrapper to allow us to connect toAndrew Tridgell1-1/+1
servers that we don't know the netbios name of. (This used to be commit 147d49dade3901835b5d60b02c495bea544ff5e9)
1998-10-04add support for unlink() on printer shares in smbwrapper. unlink()Andrew Tridgell1-0/+37
will remove the job from the pirnt queue. (This used to be commit 7bd738c30a09a211fd14a8544309efeec17c66f5)
1998-10-04added support for printing via smbwrapperAndrew Tridgell1-0/+100
You can print using "cp filename /smb/SERVER/PRINTER/jobname" You can list the current printqueue using ls (This used to be commit 080fb61b69620e26e8122705383dc2bd0468a519)
1998-10-04use CLI_BUFFER_SIZE instead of BUFFER_SIZEAndrew Tridgell1-10/+12
(This used to be commit 98f9bb94fcdd0195158eba0deaebe4679baea44c)
1998-10-04fix an error code in cli_error()Andrew Tridgell1-1/+1
(This used to be commit bbc891727e57172bf6200e10c32498776a77510b)
1998-10-04modified cli_read() and cli_write() to issue multiple outstandingAndrew Tridgell1-55/+133
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. (This used to be commit c728d1c5d6e4626d2f8e318eab4df32acc8cb505)
1998-10-04use const charAndrew Tridgell1-2/+2
(This used to be commit 83b7bfa821b88f0826b348ec493141a324e12a86)
1998-10-03fixed a authentication problem with non-encrypting serversAndrew Tridgell1-2/+3
(This used to be commit 06f1af12c37fc759e7315366dd4e82f4e96b042d)
1998-10-03fixed vi on smbwrappper (it was a problem in cli_read())Andrew Tridgell1-2/+2
(This used to be commit 1dcc84b942d4669f978aebdeaf85ea609c2b732f)
1998-10-03added simple device/inode number support based on a checksum of theAndrew Tridgell1-1/+1
filename (This used to be commit 5674fb4e9dc4d92213d763c8cecd26efc23a9720)
1998-10-03- always open for reading (otherwise getattrE won't work).Andrew Tridgell1-4/+11
- added somemore NT error codes (This used to be commit a0632529133fdaff9d70ac3e0cf6bb021c79438e)
1998-10-03added unlink() and rename() support to smbwrapperAndrew Tridgell1-5/+9
(This used to be commit b85d96144728e8a29c7c1114462e28bf3b144b80)
1998-10-03- ignore *.p filesAndrew Tridgell1-87/+221
- enable cli_RNetSharEnum - fix password handling in sesssetup for NT1 protocol - handle partial reads and writes in cli_{read,write} - added cli_getattrE - modify cli_qpathinfo() to swap byte order for win95 servers - handle temporary errors from FINDFIRST/FINDNEXT from win95 servers, when we get a error we sleep for a bit and retry - return approx unix errno from cli_error(). Need to add a lot more cases to this. (This used to be commit 715a6631c714bbd6a965e45fba1e0d0b37a27df6)
1998-10-02Makefile.in :Luke Leighton1-58/+104
- added srvsvc client files clientgen.c : - replaced cli_error(cli, int *cls, int *err) with cli_error(cli, uint8 cls, uint32 *err). this version detects 32 bit status messages. the DOS error "MORE_DATA", the equivalent of the 32 bit *warning* 0x8000 0005 (STATUS_BUFFER_OVERFLOW), was being processed as an error, terminating the cli_receive_trans() call. cli_pipe.c : - replaced calls that had been incorrectly modified from 32 bit warnings (0x8000 0005 - STATUS_BUFFER_OVERFLOW) to 8 bit DOS errors (0x01 0xEA - MORE_DATA). the use of the old version of cli_error (DOS only) instead of the new one (DOS and 32 bit) caused the dce/rpc client code to fail. - replaced 2 space indentation with tab indentation in all functions. cli_srvsvc.c : cmd_srvsvc.c : - added these files back in, fixing them up to use jeremy's modified versions of the dce/rpc client functions. parse_srv.c : - added back in some "unused" functions required by dce/rpc client-side code. it would be helpful if all such "unused" functions could be added back in. rpcclient.c : - added "session", "file", "share", "connection" enumeration functions back in. these are equivalent to nt's "NetXXXXXEnum" Win32 (MSDN) functions. - added "srvinfo" function back in. this is equivalent to nt's NetServerGetInfo Win32 (MSDN) function. (This used to be commit bcf39ffdcc64e049bca2d70a394a99976291e81d)
1998-10-02several clientgen mods to support smbwrapper. In particular addedAndrew Tridgell1-3/+272
cli_list() for directory listing and expended some other functions a bit. (This used to be commit 9bae21abaf3d69a204c6e617f06094303da4da48)
1998-09-30libsmb/clientgen.c: Fixed signed/unsigned compile warnings spotted by Herb.Jeremy Allison1-2/+2
param/loadparm.c: smbd/oplock.c: Allow kernel oplocks to be turned off in the smb.conf file. smbd/server.c: Move init_structs() to after the smb.conf file is loaded - preparation for making a "max open files" parameter. Jeremy. (This used to be commit 6a261517a09b005f502a37941431308fa8bf2c5c)
1998-09-29Got very strict about the differences and uses ofJeremy Allison1-27/+49
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. (This used to be commit e570db46fc3a78e499523fd342e9a34cebb18998)
1998-09-29uchar / char typecast issuesLuke Leighton1-2/+2
(This used to be commit 1a1d8d0483fc05765e6dcc2da00405e0ec7421a2)