summaryrefslogtreecommitdiff
path: root/source3/lib/util_unistr.c
AgeCommit message (Collapse)AuthorFilesLines
2000-04-22This is a *big* checkin that may break some things, but implements theJeremy Allison1-19/+12
new open mechanism Andrew & I discussed. config.sub: configure: Included the QNX patch. include/vfs.h: smbd/vfs-wrap.c: smbd/vfs.c: Added ftruncate vfs call (needed). Note that we will also need locking calls in the vfs (to be added). lib/util_unistr.c: nmbd/nmbd_processlogon.c: Fix for NT domain logons causing nmbd to core dump. Also fix for sidsize DOS bug. locking/locking.c: Check value of ret before using it for memdup. printing/printing.c: Convert print_fsp_open to return an allocated fsp. rpc_server/srv_lsa.c: Fix for NT domain logons. I have removed all use of lp_share_modes() from the code (although I left the parameter in the table for backwards compatibility). It no longer makes sense for this to exist. smbd/close.c: Removed lp_share_modes(). smbd/fileio.c: Fixed parameters to unlock_share_entry call in panic code. smbd/files.c: Correctly set the unix_ERR_code to ERRnofids on fsp allocation fail. smbd/nttrans.c: smbd/reply.c: smbd/trans2.c: Changed all occurrences of open_file_shared/open_directory/ open_file_stat to return an fsp from the call. smbd/open.c: Changed all occurrences of open_file_shared/open_directory/ open_file_stat to return an fsp from the call. In addition I have fixed a long standing race condition in the deny mode processing w.r.t. two smbd's creating a file. Andrew, please note that your original idea of using open with O_EXCL in this case would not work (I went over the races very carefully) and so we must re-check deny modes *after* the open() call returns. This is because there is a race between the open with O_EXCL and the lock of the share mode entry. Imagine the case where the first smbd does the open with O_EXCL and a deny mode of DENY_ALL, but is pre-empted before it locks the share modes and creates the deny mode entry for DENY_ALL. A second smbd could then come in with O_RDONLY and a deny mode of DENY_NONE and the two opens would be allowed. The *only* way to fix this race is to lock the share modes after the open and then do the deny mode checks *after* this lock in the case where the file did not originally exist. This code will need extensive testing but seems to initially work. Jeremy. (This used to be commit ab0ecc39d688f16b9692fe90b991f0b89287070a)
2000-04-15use macros for table boundariesAndrew Tridgell1-6/+9
(This used to be commit a82a5acff2ad2120f5480f0cb08550e95d80c59e)
2000-04-15a quick hack to reduce the size of the unicode map table headers fromAndrew Tridgell1-9/+39
3MB to 250k. I split the table into 3 sections, after noticing that 5/6 of the table was empty. (This used to be commit c1496736bbdb7f6bf1eb43a54f883e5f41a4d39e)
2000-04-11added a cheap and nasty skip_unibuf() fn to allow easier merging fromAndrew Tridgell1-0/+10
TNG out unicode string handling functions need a lot of work (This used to be commit 707401fc1e697362cdaadcfaac4edc964b80b1a0)
2000-03-27changed the definition of dos_PutUniCodeAndrew Tridgell1-4/+9
the previous definition could result is us overflowing a buffer. The null termination was always added yet the size returned did not include the null termination. the new function takes a BOOL null_terminate, and always returns the total number of bytes consumed by the string. (This used to be commit 426c90433396a95033eefcc4af97603abc934221)
2000-03-22Correctly convert from little-endian UNICODE to dos_codepage when doingJeremy Allison1-0/+2
secure file create. Jeremy. (This used to be commit 90134dd13721f60d4fb05ce9434b65e95ff09629)
2000-03-22acconfig.h configure configure.in: Added check for UT_SYSLEN for utmp code.Jeremy Allison1-51/+14
include/byteorder.h: Added alignment macros. include/nameserv.h: Added defines for msg_type field options - from rfc1002. lib/time.c: Typo fix. lib/util_unistr.c: Updates from UNICODE branch. printing/nt_printing.c: bzero -> memset. smbd/connection.c: Added check for UT_SYSLEN for utmp code. Other fixes : Rollback of unapproved commit from Luke. Please *ask* next time before doing large changes to HEAD. Jeremy. (This used to be commit f02999dbf7971b4ea05050d7206205d7737a78b2)
2000-02-07Hum, I should remove my gloves when I'm in front of an xterm :)Jean-François Micouleau1-2/+2
fixed a stupid bug in unistr2_to_ascii that I introduced fixed getprinterdata() (This used to be commit 2f544a807714024c0fe2ddc26e11c9ddcb47e81f)
2000-02-07Jeremy can you check lib/util_unistr.c for codepages support ?Jean-François Micouleau1-0/+97
I added 2 UNICODE <-> ASCII functions which _don't_ honor codepage support. J.F. (This used to be commit b81dc7b7f832cae2e66076398a134fbb6c1f78ca)
2000-01-26Second set of inline optimisation fixes from Ying Chen <ying@almaden.ibm.com>.Jeremy Allison1-3/+3
Stop makeing function calls for every use of skip_multibyte_char. This function is called several *million* times during a NetBench run :-). Jeremy. (This used to be commit e5a3deba46ea2d4cb49a6c4b73edd766fe8b5a5c)
1999-12-29Converted most of the functions in lib/util_str.c to smb_ucs2_t equivalents.Jeremy Allison1-37/+875
Jeremy. (This used to be commit 1ba42aca2163c534f6be4e4a733604e3dffe0ed8)
1999-12-23Fixed range checking in unicode to multibyte function. Oops.Jeremy Allison1-9/+15
Jeremy. (This used to be commit 61e06c44b47834ed297aacee6d59c40796b4ffb5)
1999-12-23Added wtoupper/wtolower.Jeremy Allison1-0/+19
Jeremy. (This used to be commit 2e03ed62542152264ca5315b9ee9bb045b7f0b03)
1999-12-23Samba now includes a full ucs2 upper to lower case (and vica versa) map table.Jeremy Allison1-0/+56
Jeremy. (This used to be commit d7b72d4cbfb6bd1925abc7f95c1180d3d65856a5)
1999-12-22include/includes.h: Trimmed down unicode directory entry to be POSIX complient.Jeremy Allison1-0/+14
lib/system.c: Trimmed down unicode directory entry to be POSIX complient. lib/util_unistr.c: Added wstrdup(). Jeremy. (This used to be commit ca64f4ab00c6d54022ba9bd4b869523566a242d7)
1999-12-22Ok - we now have the following functions for UNICODE support :Jeremy Allison1-0/+127
unicode_to_unix() unix_to_unicode() unicode_to_dos() dos_to_unicode() wstrlen() safe_wstrcpy() safe_wstrcat() wstrcmp() wstrncmp() wstrstr() wstrchr() wstrrchr() wstrtok() Jeremy. (This used to be commit ae34e2589ac32b7144607b77bd0d42bc74b42aff)
1999-12-21Added new unicode functions - not used yet, but are the basis for theJeremy Allison1-1/+209
internal unicode conversion of Samba. Jeremy. (This used to be commit 302412df64aa4b6572b13ef61dfd68c3f8ebbb8b)
1999-12-13Unicode conversion fix in Japanese environment from Motonobu TAKAHASHI.Jeremy Allison1-2/+2
Jeremy. (This used to be commit decc6ebca29abd78754c275352de58b0de2e2aa5)
1999-12-13first pass at updating head branch to be to be the same as the SAMBA_2_0 branchAndrew Tridgell1-194/+445
(This used to be commit 453a822a76780063dff23526c35408866d0c0154)
1999-11-04samuserset <username> -p password. YESSSSS :)Luke Leighton1-6/+16
you have to use "ntlmv1" at the moment (i.e set client ntlmv2 = no). (This used to be commit f52504c553becc64b89d546a57b1bd9cf1bc5b5c)
1999-11-03had to move unistr2_dup(), unistr2_free() and unistr2_copy() intoLuke Leighton1-0/+34
util_unistr.c in order to get bin/testparm to compile. (This used to be commit e718ce9c4a3598483e38b8c32bdf2924593edc1e)
1999-10-30NetServerTransportEnum parsing, client-side and rpcclient "srvtransports" added.Luke Leighton1-0/+23
(This used to be commit 37f4aac06fec3fbb34ed40d1010829b2e1f28558)
1999-10-25- typecast malloc / Realloc issues.Luke Leighton1-8/+8
- signed / unsigned issues. (This used to be commit c8fd555179314baf1672a23db34dc8ad9f2d02bf)
1999-10-07- added rudimentary CAP_UNICODE support because i thought it was part ofLuke Leighton1-2/+3
a problem i was having. - added rudimentary CAP_STATUS32 support for same reason. - added hard-coded, copy-the-same-data-from-over-the-wire version of CAP_EXTENDED_SECURITY, which is a security-blob to encapsulate GSSAPI which encodes SPNEGO which is used to negotiate Kerberos or NTLMSSP. i have implemented NTLMSSP which negotiates NTLMv1 or NTLMv2 and 40-bit or 128-bit etc. i have implemented NTLMv1 / 40-bit. *whew*. (This used to be commit e5b80bd2f76fda70e41e4a9007eb035dab92ed8e)
1999-04-08Fix for endianness problem reported by Edan Idzerda <edan@mtu.edu>. AMatthew Chapman1-2/+3
BUFFER2 is really a "unibuf" in my terminology and we should treat it as such. (This used to be commit 7ef76320b79b3ca4e04dcf809ac6388b6c47a3d8)
1999-02-15Always null-terminate strings.Matthew Chapman1-16/+33
(This used to be commit b314430b2102e47529b093b1b98b5b6f3b6ea74f)
1999-02-12const cast issues. [p.s - tidy work, matt!]Luke Leighton1-16/+31
(This used to be commit dad5baef194b18c674c0d908a0e0714c0a1aefa4)
1999-02-12UNICODE cleanup (see lib/util_unistr.c).Matthew Chapman1-196/+114
No more ugly static library buffers and all functions take a destination string length (especially unistrcpy was rather dangerous; we were only saved by the fact that datagrams are limited in size). (This used to be commit a1d39af1ce1d451b811dbd7c2ba391214851b87e)
1999-02-11UNICODE issues.Luke Leighton1-7/+7
(This used to be commit 6a437cfb33f24913e0c1f8484c0b08ef317e513b)
1999-02-11the UNICODE issue...Luke Leighton1-1/+27
(This used to be commit 73db80f34183324845407b00f58462ff2d7b47ea)
1999-02-10use jeremy's versions of the UNICODE routines.Luke Leighton1-38/+50
(This used to be commit c5109ff782be8774db47a92b48ca6335ec8d6065)
1999-02-08UNICODE byte ordering issue: typecast to uint16* replaced with SSVAL()Luke Leighton1-6/+6
(This used to be commit 9084b7e33dfe717bd8d5604ee71d137e3baef0f5)
1998-11-12largely rewrote smbpasswd so that the code is understandable. ThisAndrew Tridgell1-1/+1
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-10rpcclient registry commands.Luke Leighton1-0/+64
(This used to be commit 36fcb4a6e643a05d06a2a273d74318fee7f2c647)
1998-11-05split string and unicode string routines into these files.Luke Leighton1-0/+186
these are *not* going to be added into the Makefile.in yet so they still also exist in util.c. (This used to be commit 3f5feda6749dace6bc51fb0e02b16d2b72a930b8)