1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-17 02:05:21 +03:00

45 Commits

Author SHA1 Message Date
Gerald Carter
cf023a7ce0 fixed unistr_to_ascii to deal with NULL src strings
jerry
(This used to be commit 8e95aae1709a9be28d6e25ff6f0fdc729dc09274)
2000-08-12 14:20:40 +00:00
Gerald Carter
f488740112 Deal will NULL UNISTR in unistr_to_ascii
jerry
(This used to be commit cfa4c878a2ccaf346940f8f4a201737e185f76d6)
2000-08-10 14:00:05 +00:00
Gerald Carter
d2b40a7de2 More rpcclient merge issues:
* fixes some readline bugs from the merge
        * first attempt at commands (spoolenum almost works)
        * no changes to existing functions in HEAD; only additions
          of new functions.  I'll weed out what I can as I go.




--jerry
(This used to be commit 61d2aad5dc2b212b11c981f1eca47efa627e9fc8)
2000-07-07 06:20:46 +00:00
Jeremy Allison
5dd2bd5076 lib/util_unistr.c: Off-by-one fix for dos_PutUniStr from John Reilly jreilly@hp.com.
Memory leak fix for new sec_ctx code (sorry Tim :-).
Jeremy.
(This used to be commit edaf49c66d5a5ccf6689b358c301e208599a468f)
2000-06-23 17:31:38 +00:00
Jeremy Allison
f9e9f98a4a lib/util_unistr.c: Removed ascii_to_unistr() as it does no codepage.
Removed unistr_to_ascii() as it was never used.
printing/nt_printing.c: Removed "DUMMY.XX" files.
rpc_server/srv_spoolss_nt.c: Use dos_PutUniCode() instead of ascii_to_unistr().
							Attempted to fix the "return value" size code based on J.F's
							comments. This needs looking at.
Jeremy.
(This used to be commit de99011bf3b2a23bd1854a047382a107aaeb9c68)
2000-06-22 01:39:17 +00:00
Jeremy Allison
f0080e5a39 Getting back to a compilable state (not there yet but close).
Added patches for random -> sys_random.
Added set_effective_xxx patches for AFS code.
Memory allocation changes in spoolss code.
Jeremy.
(This used to be commit c2099cfb033c2cdb6035f4f7f50ce21b98e1584d)
2000-06-01 17:01:34 +00:00
Luke Leighton
682cccd8af unistr_to_dos not unistr_to_ascii
(This used to be commit f46c4fe876a0cabe7044ca30c17e6c217d618635)
2000-05-27 02:05:15 +00:00
Jeremy Allison
fa659fea9b Added unicode_to_dos_char() function to address converting single UNICODE
characters to one or more DOS codepage characters.
Jeremy.
(This used to be commit eefbfb5e16fcf40f335edc840a49f837f6b64111)
2000-05-12 14:28:48 +00:00
Jeremy Allison
612738a9e1 lib/util_unistr.c:
libsmb/clilist.c:
rpc_server/srv_spoolss_nt.c:
smbd/trans2.c: Changed unistr_to_ascii to unistr_to_dos - do codepage conversion.
msdfs/msdfs.c: Removed stub unistr_to_dos.
libsmb/pwd_cache.c: Removed obfuscation functions as they don't do anything and
					don't add any security.
Jeremy.
(This used to be commit 1ed146467e764e6a81d8f78cd58fb5765ebf5d21)
2000-05-10 22:47:09 +00:00
Andrew Tridgell
700f72453e - removed all our old wildcard matching code and replaced it with a
call to ms_fnmatch(). This also removes all the Win9X semantics stuff
and a bunch of other associated cruft.

- moved the stat cache code into statcache.c

- fixed the uint16 alignment requirements of ascii_to_unistr() and
  unistr_to_ascii()

- trans2 SMB_FIND_FILE_BOTH_DIRECTORY_INFO returns the short name as
  unicode always (at least thats what NT4 does)

- fixed some errors in the in-memory tdb code. Still ugly, but doesn't
  crash as much
(This used to be commit 03e9cea004bbba72161a5323cf3b4556c94aed8e)
2000-04-30 11:04:28 +00:00
Jeremy Allison
6259f51dd9 This is a *big* checkin that may break some things, but implements the
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-22 00:33:16 +00:00
Andrew Tridgell
b8c51212db use macros for table boundaries
(This used to be commit a82a5acff2ad2120f5480f0cb08550e95d80c59e)
2000-04-15 08:07:11 +00:00
Andrew Tridgell
4b7850663e a quick hack to reduce the size of the unicode map table headers from
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-15 07:14:40 +00:00
Andrew Tridgell
03630a9aa9 added a cheap and nasty skip_unibuf() fn to allow easier merging from
TNG

out unicode string handling functions need a lot of work
(This used to be commit 707401fc1e697362cdaadcfaac4edc964b80b1a0)
2000-04-11 13:47:17 +00:00
Andrew Tridgell
18bc76a0c6 changed the definition of dos_PutUniCode
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-27 12:38:45 +00:00
Jeremy Allison
6814d0f456 Correctly convert from little-endian UNICODE to dos_codepage when doing
secure file create.
Jeremy.
(This used to be commit 90134dd13721f60d4fb05ce9434b65e95ff09629)
2000-03-22 20:39:31 +00:00
Jeremy Allison
8f1620125d acconfig.h configure configure.in: Added check for UT_SYSLEN for utmp code.
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-03-22 19:03:12 +00:00
Jean-François Micouleau
07fd3b392d Hum, I should remove my gloves when I'm in front of an xterm :)
fixed a stupid bug in unistr2_to_ascii that I introduced

fixed getprinterdata()
(This used to be commit 2f544a807714024c0fe2ddc26e11c9ddcb47e81f)
2000-02-07 18:06:54 +00:00
Jean-François Micouleau
59ac32c255 Jeremy can you check lib/util_unistr.c for codepages support ?
I added 2 UNICODE <-> ASCII functions which _don't_ honor codepage
support.

	J.F.
(This used to be commit b81dc7b7f832cae2e66076398a134fbb6c1f78ca)
2000-02-07 16:22:16 +00:00
Jeremy Allison
d867b86721 Second set of inline optimisation fixes from Ying Chen <ying@almaden.ibm.com>.
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)
2000-01-26 00:12:35 +00:00
Jeremy Allison
211697ee6c Converted most of the functions in lib/util_str.c to smb_ucs2_t equivalents.
Jeremy.
(This used to be commit 1ba42aca2163c534f6be4e4a733604e3dffe0ed8)
1999-12-29 02:00:38 +00:00
Jeremy Allison
f0161cf815 Fixed range checking in unicode to multibyte function. Oops.
Jeremy.
(This used to be commit 61e06c44b47834ed297aacee6d59c40796b4ffb5)
1999-12-23 18:58:44 +00:00
Jeremy Allison
3a3afec47f Added wtoupper/wtolower.
Jeremy.
(This used to be commit 2e03ed62542152264ca5315b9ee9bb045b7f0b03)
1999-12-23 02:01:37 +00:00
Jeremy Allison
7c51c5ddf3 Samba now includes a full ucs2 upper to lower case (and vica versa) map table.
Jeremy.
(This used to be commit d7b72d4cbfb6bd1925abc7f95c1180d3d65856a5)
1999-12-23 01:57:43 +00:00
Jeremy Allison
5b3096a32f include/includes.h: Trimmed down unicode directory entry to be POSIX complient.
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-22 18:46:05 +00:00
Jeremy Allison
02496ae415 Ok - we now have the following functions for UNICODE support :
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-22 00:17:35 +00:00
Jeremy Allison
8177fc778b Added new unicode functions - not used yet, but are the basis for the
internal unicode conversion of Samba.
Jeremy.
(This used to be commit 302412df64aa4b6572b13ef61dfd68c3f8ebbb8b)
1999-12-21 23:14:01 +00:00
Jeremy Allison
92a036cc37 Unicode conversion fix in Japanese environment from Motonobu TAKAHASHI.
Jeremy.
(This used to be commit decc6ebca29abd78754c275352de58b0de2e2aa5)
1999-12-13 19:17:40 +00:00
Andrew Tridgell
3db52feb1f first pass at updating head branch to be to be the same as the SAMBA_2_0 branch
(This used to be commit 453a822a76780063dff23526c35408866d0c0154)
1999-12-13 13:27:58 +00:00
Luke Leighton
fe8383382d samuserset <username> -p password. YESSSSS :)
you have to use "ntlmv1" at the moment (i.e set client ntlmv2 = no).
(This used to be commit f52504c553becc64b89d546a57b1bd9cf1bc5b5c)
1999-11-04 21:41:36 +00:00
Luke Leighton
59a7e6cef8 had to move unistr2_dup(), unistr2_free() and unistr2_copy() into
util_unistr.c in order to get bin/testparm to compile.
(This used to be commit e718ce9c4a3598483e38b8c32bdf2924593edc1e)
1999-11-03 20:01:07 +00:00
Luke Leighton
4cda1d2b4f NetServerTransportEnum parsing, client-side and rpcclient "srvtransports" added.
(This used to be commit 37f4aac06fec3fbb34ed40d1010829b2e1f28558)
1999-10-30 22:34:38 +00:00
Luke Leighton
5612824426 - typecast malloc / Realloc issues.
- signed / unsigned issues.
(This used to be commit c8fd555179314baf1672a23db34dc8ad9f2d02bf)
1999-10-25 19:03:27 +00:00
Luke Leighton
cba7662da1 - added rudimentary CAP_UNICODE support because i thought it was part of
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-10-07 22:10:29 +00:00
Matthew Chapman
e6ea3cc463 Fix for endianness problem reported by Edan Idzerda <edan@mtu.edu>. A
BUFFER2 is really a "unibuf" in my terminology and we should treat it as
such.
(This used to be commit 7ef76320b79b3ca4e04dcf809ac6388b6c47a3d8)
1999-04-08 05:34:11 +00:00
Matthew Chapman
0baa42bdd7 Always null-terminate strings.
(This used to be commit b314430b2102e47529b093b1b98b5b6f3b6ea74f)
1999-02-15 05:31:52 +00:00
Luke Leighton
b8082d0840 const cast issues. [p.s - tidy work, matt!]
(This used to be commit dad5baef194b18c674c0d908a0e0714c0a1aefa4)
1999-02-12 15:35:27 +00:00
Matthew Chapman
fd96929ec1 UNICODE cleanup (see lib/util_unistr.c).
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-12 00:16:09 +00:00
Luke Leighton
f38bfc7d9a UNICODE issues.
(This used to be commit 6a437cfb33f24913e0c1f8484c0b08ef317e513b)
1999-02-11 22:12:49 +00:00
Luke Leighton
c6d16eea43 the UNICODE issue...
(This used to be commit 73db80f34183324845407b00f58462ff2d7b47ea)
1999-02-11 18:50:13 +00:00
Luke Leighton
8b6b6b57b5 use jeremy's versions of the UNICODE routines.
(This used to be commit c5109ff782be8774db47a92b48ca6335ec8d6065)
1999-02-10 22:30:47 +00:00
Luke Leighton
99a9b0f7c4 UNICODE byte ordering issue: typecast to uint16* replaced with SSVAL()
(This used to be commit 9084b7e33dfe717bd8d5604ee71d137e3baef0f5)
1999-02-08 23:40:49 +00:00
Andrew Tridgell
d85dcf86d5 largely rewrote smbpasswd so that the code is understandable. This
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-12 06:12:19 +00:00
Luke Leighton
1e1c2ec93c rpcclient registry commands.
(This used to be commit 36fcb4a6e643a05d06a2a273d74318fee7f2c647)
1998-11-10 19:05:00 +00:00
Luke Leighton
8c3dcf128b split string and unicode string routines into these files.
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)
1998-11-05 16:48:35 +00:00