summaryrefslogtreecommitdiff
path: root/source3/libsmb/clifile.c
AgeCommit message (Collapse)AuthorFilesLines
2001-08-10A rewrite of the error handling in the libsmb client code. I've separatedTim Potter1-1/+1
out the error handling into a bunch of separate functions rather than all being handled in one big function. Fetch error codes from the last received packet: void cli_dos_error(struct cli_state *cli, uint8 *eclass, uint32 *num); uint32 cli_nt_error(struct cli_state *); Convert errors to UNIX errno values: int cli_errno_from_dos(uint8 eclass, uint32 num); int cli_errno_from_nt(uint32 status); int cli_errno(struct cli_state *cli); Detect different kinds of errors: BOOL cli_is_dos_error(struct cli_state *cli); BOOL cli_is_nt_error(struct cli_state *cli); BOOL cli_is_error(struct cli_state *cli); This also means we now support CAP_STATUS32 as we can decode and understand NT errors instead of just DOS errors. Yay! Ported a whole bunch of files in libsmb to use this new API instead of the just the DOS error. (This used to be commit 6dbdb0d813f3c7ab20b38baa1223b0b479aadec9)
2001-07-04The big character set handling changeover!Andrew Tridgell1-13/+13
This commit gets rid of all our old codepage handling and replaces it with iconv. All internal strings in Samba are now in "unix" charset, which may be multi-byte. See internals.doc and my posting to samba-technical for a more complete explanation. (This used to be commit debb471267960e56005a741817ebd227ecfc512a)
2001-07-02Insure caught the fact that PTRDIFFs were being done between two unrelatedJeremy Allison1-1/+1
pointers. Jeremy. (This used to be commit 15c64199cb29e2fca6ee7353673dbb3f962e0e24)
2001-06-21Added STR_NOALIGN flags to clistr and srvstr fns. Yes, NT actually doesAndrew Tridgell1-2/+4
send unaligned unicode strings sometimes! Fixed our handling of the workgroup name tacked on the end of the NT1 negprot response (a unaligned unicode) fixed a couple of places where we should be using the message_end fns instead of pre-calculated buffer lengths (This used to be commit 86613493a9b2e56523153486931d0bf8d39beb7a)
2001-05-17Fix a small warning about char * vs unsigned char * that gets some compilersRichard Sharpe1-1/+1
in a twitch. (This used to be commit 672242a52eafde35cba4657bce248fef0df9e46b)
2001-04-22merging from 2.2 to headAndrew Tridgell1-8/+45
(This used to be commit bfcc6f88271025760732271f03933839b1cbe0de)
2001-03-30This is a big, rather ugly patch. Whilst investigating the files not truncatedJeremy Allison1-4/+4
when copying to a full disk problem, I discovered that we were not allowing the delete on close flag to be set properly, this led to other things, and after investigation of the proper delete on close semantics and their relationship to the file_share_delete flag I discovered there were some cases where we weren't doing the deny modes properly. And this after only 5 years working on them..... :-) :-). So here's the latest attempt. I realised the delete on close flag needs to be set across all smbds with a dev/ino pair open - in addition, the delete on close flag, allow share delete and delete access requested all need to be stored in the share mode tdb. The "delete_on_close" entry in the fsp struct is now redundant and should really be removed. This may also mean we can get rid of the "iterate_fsp" calls that I didn't like adding in the first place. Whilst doing this patch, I also discovered we needed to do the se_map_generic() call for file opens and POSIX ACL mapping, so I added that also. This code, although ugly, now passes the deny mode torture tests plus the delete on close tests I added. I do need to add one more multiple connection delete on close test to make sure I got the semantics exactly right, plus we should also (as Andrew suggested) move to random testing here. The good news is that NT should now correctly delete the file on disk full error when copying to a disk :-). Jeremy. (This used to be commit 51987684bd231c744da2e5f3705fd236d5616173)
2001-03-29Added cli_nt_delete_on_close() call to allow flag to be set for torture tests.Jeremy Allison1-0/+41
Jeremy. (This used to be commit 6f7d9e29e4d3a17254ff0ae20c0da63eacded7fe)
2001-03-29Added cli_nt_create_full() as a way to get at all the ntcreate parameters.Jeremy Allison1-6/+20
Used in smbtorture mods. Re-cast cli_nt_create() as a call to cli_nt_create_full(). Jeremy. (This used to be commit f602fa1205e99541e825ccae8502c35cd0e7ccfc)
2001-03-14simpler clistr interface which handles individual packets havingAndrew Tridgell1-1/+1
unicode bit set differently to capabilities (This used to be commit 34a0821e087810381996f5ff6cf3b4d7b9bb53a0)
2001-03-10to use the same macros in the client and server rename the CLISTR_Andrew Tridgell1-11/+11
macros to STR_ (This used to be commit 95c9e4e0ba8f37f565aaf136f41eb76489441ff7)
2001-02-22cope better with broken filer expectationsAndrew Tridgell1-2/+2
(This used to be commit 847de3b4adfb00a98032e478b2663d09e240380e)
2001-02-21the unicode conversion of our client code is complete enough to beAndrew Tridgell1-50/+0
enabled by default you can disable it by setting the environment variable CLI_FORCE_ASCII (This used to be commit 4d59c08c5e6f54c0d6ced7650750cb987e77b6c9)
2001-02-20yipee! client unicode now works well with ntAndrew Tridgell1-3/+9
(This used to be commit 5b2ef8a1b914265c6072c968d2dad7d26c2aeffc)
2001-02-20converted a bunch more fnsAndrew Tridgell1-15/+25
(This used to be commit f6b8d6730452522f77852af0917cb48424d4c8a9)
2001-02-20converted nt_create and setatrAndrew Tridgell1-9/+10
(This used to be commit c40a1e4ebdb379482bf6e7d4efcc9b5321a4e7c6)
2001-02-20- neater setting of bccAndrew Tridgell1-13/+14
- converted cli_rename and cli_unlink (This used to be commit 0a8992e224b7a3d90d45b13d73fa8a6f155efa79)
2001-02-20converted cli_open()Andrew Tridgell1-7/+8
(This used to be commit db60c0c26242be0370e6459fe6f1634c97b61176)
2001-02-20converted cli_chkpath()Andrew Tridgell1-3/+4
(This used to be commit 95268f52556e5983004e594002b7e18a8656d1f0)
2001-02-20converted cli_mkdir()Andrew Tridgell1-3/+4
(This used to be commit bce3ed01a9c3c7c89cdc21b60f1122dc6b6db264)
2000-12-21Added a cli_nt_create_uni() to do a ntcreate&x with a unicode filename,Tim Potter1-2/+49
regardless of the settings negotiated in the flags2 smb field. (This used to be commit c4476c6315a6e99dd4a1d0e3185a0d17c073205d)
2000-12-04pass the desired access into cli_nt_create()Andrew Tridgell1-3/+3
(This used to be commit a2d07994e0376a8d530d262573c96710bdff2236)
2000-12-04fixed indentationAndrew Tridgell1-1/+1
(This used to be commit b7a1c00bed5f0650783c8d7397c11aa2ac59aa04)
2000-11-16Ok - fixed a bug in our levelII oplock code. We need to break a level II onJeremy Allison1-1/+4
a byte range lock (write lock only, but Win2k breaks on read lock also so I do the same) - if you think about why, this is obvious. Also fixed our client code to do level II oplocks, if requested, and fixed the code where we would assume the client wanted level II if it advertised itself as being level II capable - it may not want that. Jeremy. (This used to be commit 213cd0b5192307cd4b0026cae94b2f52fb1b0c02)
2000-09-29added cli_lock64() and cli_unlock64()Andrew Tridgell1-0/+96
(This used to be commit 91f0a3cc2f59a49f6ce8550e7d07b9b01e0b285f)
2000-04-25split clientgen.c into several partsAndrew Tridgell1-0/+609
the next step is splitting out the auth code, to make adding lukes NTLMSSP support easier (This used to be commit 10c5470835b43116ed48b3137c3b9cc867a20989)