summaryrefslogtreecommitdiff
path: root/source3/lib/charcnv.c
AgeCommit message (Collapse)AuthorFilesLines
2011-03-14Fix bug #8005 - smbtorture4 BASE-TCONDEV fails when tested on SambaJeremy Allison1-2/+6
When pulling non-aligned ucs2 strings, we neglected to add in the pad byte to the buffer length we've eaten. This caused the device string in TCONX (which seems to be one of the few places that uses non-aligned ucs2 strings) to be incorrectly read. Volker please check. Jeremy.
2011-02-18lib/util/charset Add back setlocale(), but only when called from binariesAndrew Bartlett1-1/+1
When called from a library, we don't want to call this, as we may overwrite some of our calling program's context. Andrew Bartlett Autobuild-User: Andrew Bartlett <abartlet@samba.org> Autobuild-Date: Fri Feb 18 09:29:35 CET 2011 on sn-devel-104
2011-02-18lib/util/charcnv Move iconv handle setup in commonAndrew Bartlett1-290/+12
We now use the struct smb_iconv_convenience at the core of all our iconv code, and use global_iconv_convenience for the callers that don't specify one. Andrew Bartlett
2011-02-18s3-charcnv Don't genreate valid_table on the fly, rely on valid.datAndrew Bartlett1-9/+0
This file is always installed, and is only even required for the old, depricated mangle hash method. Andrew Bartlett
2011-02-18charset Remove use of {isupper,islower,toupper,tolower}_w functionsAndrew Bartlett1-1/+1
These now call the common _m functions that consider UTF16 code points. This removes the code which will make up a 'lame' table in memory, as this can just as correctly be handled by running the algorithm at runtime (which is to call toupper() and tolower() on characters < 128). When used, a top level waf build will always locate the correct table - in the build tree or outside - due to relinking the installed binary. Andrew Bartlett
2010-11-03s3:lib/charcnv: clarify comments in next_codepoint_ext()Michael Adam1-2/+2
(giving the unicod U+<hexnumber> notation of the codepoints referred to in the comments)
2010-11-03s3:lib/charcnv: rename a parameter for clarity in next_codepoint_ext()Michael Adam1-5/+5
2010-11-03s3:lib/charcnv: reformat comments in next_codepoint_ext()Michael Adam1-12/+18
2010-11-03s3:lib/charcnv: add next_codepoint_ext() that accepts input charset.Michael Adam1-11/+32
next_codepoint() takes as string in CH_UNIX encoding and returns the unicode codepoint of the next (possibly multibyte) character of the input string. The new next_codepoint_ext() function adds the encoding of the input string as a parameter. next_codepoint() now only calls next_codepoint_ext() with CH_UNIX als src_charset argument.
2009-07-25Use a switch statement in charset_name()Volker Lendecke1-8/+24
2009-07-16Replace short-lived NULL talloc contexts with talloc_tos().Jeremy Allison1-4/+4
Jeremy.
2009-06-10Make ctemp async. Fix the test to pass against W2K3.Jeremy Allison1-3/+1
Jeremy.
2009-06-08s3-charcnv: always talloc_free in convert_string_talloc() error path.Günther Deschner1-2/+1
Guenther
2009-06-08s3-charcnv: remove remaining malloc references in convert_string_talloc().Günther Deschner1-2/+2
Guenther
2009-05-02Fix a malloc/talloc mixupVolker Lendecke1-1/+1
2009-04-27s3-auth-charcnv: fix push_string(). Don't push to ucs2 and ascii after another.Günther Deschner1-1/+2
This fixes all kinds of encrypted passwords used in the shared auth code naturally. Andrew B., please check. Guenther
2009-04-23charcnv: Import push_codepoint().Jelmer Vernooij1-0/+61
2009-04-14Make Samba3 use the new common libcli/auth codeAndrew Bartlett1-0/+38
This is particuarly in the netlogon client (but not server at this stage)
2009-04-14s3:charcnv remove now unused malloc() based conversion functionsAndrew Bartlett1-39/+0
2009-04-14Convert Samba3 to use the common lib/util/charset APIAndrew Bartlett1-205/+43
This removes calls to push_*_allocate() and pull_*_allocate(), as well as convert_string_allocate, as they are not in the common API To allow transition to a common charcnv in future, provide Samba4-like strupper functions in source3/lib/charcnv.c (the actual implementation remains distinct, but the API is now shared) Andrew Bartlett
2009-04-14Solve some of the conflict between Samba3 and Samba4 push_stringAndrew Bartlett1-5/+43
This renames push_string in Samba3 into push_string_base and push_string_check for the two different use cases. This should allow push_string to be imported from Samba4, using it's calling conventions.
2009-03-31Tidy up some convert_string_internal error cases, found by Andrew Bartlett.Jeremy Allison1-6/+19
Jeremy.
2009-03-08Revert accidental reintroduction of void ** bug.Jelmer Vernooij1-1/+1
2009-03-01Use common header file for character set handling in Samba 3 and Samba 4.Jelmer Vernooij1-1/+1
2009-01-12Even for srclen == 0 we have to return somethingVolker Lendecke1-0/+6
This fixes a regression reported by Corinna Vinschen <corinna@vinschen.de> Thanks, Volker
2008-10-16Fix bug 5826 - Directory/Filenames get truncated when 3.2.0 client acesses ↵Jeremy Allison1-13/+45
old server. There was some code in pull_ucs2_base_talloc() to cope with this case which hadn't been added to pull_ascii_base_talloc(). The older Samba returns non unicode names which is why you are seeing this codepath being executed. Unify the logic in pull_ascii_base_talloc() and pull_ucs2_base_talloc(). Jeremy.
2008-08-12Fix bug 5686 - libsmbclient segfaults with more than one SMBCCTX.Jeremy Allison1-3/+3
Here is a patch to allow many subsystems to be re-initialized. The only functional change I made was to remove the null context tracking, as the memory allocated here is designed to be left for the complete lifetime of the program. Freeing this early (when all smb contexts are destroyed) could crash other users of talloc. Jeremy. (This used to be commit 8c630efd25cf17aff59448ca05c1b44a41964b16)
2008-05-20Cleanup size_t return values in callers of convert_string_allocateTim Prouty1-124/+143
This patch is the second iteration of an inside-out conversion to cleanup functions in charcnv.c returning size_t == -1 to indicate failure. (This used to be commit 6b189dabc562d86dcaa685419d0cb6ea276f100d)
2008-04-11Cleanup size_t return values in convert_string_allocateTim Prouty1-58/+76
This patch is the first iteration of an inside-out conversion to cleanup functions in charcnv.c returning size_t == -1 to indicate failure. (This used to be commit 59124382d2894a1b194b48dd82bc5f956959eb48)
2008-04-10charcnv: add talloc_strdup_lower() - talloc variant of strdup_lower().Michael Adam1-0/+26
Michael (This used to be commit 5f6c730cbeddd1ac2f515bd985c08ceb4ca9bc47)
2008-02-01Ensure that convert_string_allocate() allocates 2 extraJeremy Allison1-6/+14
bytes and null terminates them to ensure NDR wire-reads of string types are always null terminated. Bug found by Volker after great pain :-). Jeremy. (This used to be commit aab736e6079729b3f3ab653674834e3f1305d456)
2008-01-09Fixup hot paths - add macro for toupper (c < 0x80).Jeremy Allison1-6/+12
This now matches 3.0.x on my micro-tests. Jeremy. (This used to be commit 329b924cba8225002ca40db26c45b31d141a0925)
2007-12-16Make init_doschar_table() staticVolker Lendecke1-1/+0
It's only called directly before init_valid_table() anyway, so move it there. (This used to be commit b6d1d2428866712a550a354732e2386b4f87b67b)
2007-12-06Remove pstrings from client/client.c by doing a large rewrite.Jeremy Allison1-4/+9
Mostly compiles.... Jeremy. (This used to be commit c87f3eba9aa52f4ab25d77e2167262bf5c43b1a6)
2007-12-04pull_ascii_pstring is gone.Jeremy Allison1-6/+0
Jeremy. (This used to be commit 288aacce4b56d159218be311019cb951e5a232fd)
2007-12-04Allow STR_TERMINATE and -1 src_len for pull_ucs2_base_talloc().Jeremy Allison1-1/+7
Jeremy. (This used to be commit 063358d87ac9a1d948c8d4b6358e926dd14bb3ac)
2007-11-20More trivial pstring removal.Jeremy Allison1-1/+1
Jeremy. (This used to be commit bac3bb2f6e9e15b3a9a6a6511c484f8509918ca1)
2007-11-19Start to remove some of the pstring functions we'reJeremy Allison1-11/+1
no longer using. Jeremy. (This used to be commit c21e9bdc1059268adbd14207e74097349676439e)
2007-10-18RIP BOOL. Convert BOOL -> bool. I found a few interestingJeremy Allison1-6/+6
bugs in various places whilst doing this (places that assumed BOOL == int). I also need to fix the Samba4 pidl generation (next checkin). Jeremy. (This used to be commit f35a266b3cbb3e5fa6a86be60f34fe340a3ca71f)
2007-10-10r25277: Belt-and-braces approach to Volker's fix for RPC-SAMBA3-GETUSERNAME.Jeremy Allison1-4/+7
If we promise dest is null terminated, ensure we do it even on fast path exits. Jeremy. (This used to be commit 32626e2b9770eb6b15c191a8feb881f81ed6c57a)
2007-10-10r25258: Fix a panic message and remove superfluous return after the call to ↵Michael Adam1-2/+1
smb_panic(). Michael (This used to be commit 8b5c34b7d141c44d65622f44f9432723230cea47)
2007-10-10r25238: Make the error returns from the string functionsJeremy Allison1-20/+20
always consistent. Return -1 on error, and ensure we check for this. In cases where the dest is already specified and we've been asked to terminate with a null, ensure we always do so even on error. Jeremy. (This used to be commit abedd967869ade9a43c3a8e1b889c60d4aca81cf)
2007-10-10r25222: Fix last assumptions that (size_t)-1 can be usedJeremy Allison1-18/+36
as a special dest_len of sizeof(pstring). Jeremy. (This used to be commit 9fc14c83cc5e3a360464c33e26b1073db63763d7)
2007-10-10r25199: Remove pstring from strdup_upper - make it theJeremy Allison1-14/+31
same as talloc_strdup_upper. Jeremy. (This used to be commit db1b6293771755f20660b071aac0284638dbed46)
2007-10-10r25195: Fix issue with calling pull_uc2_*alloc withJeremy Allison1-0/+8
str_len == 0. We should just return 0 in this case. Jeremy. (This used to be commit 8bb85f3f141f0f45b06d28f004cb2cf18252d4e1)
2007-10-10r25184: Fix some C++ warnings and an uninitialized variableVolker Lendecke1-1/+1
(This used to be commit b64df8a3c504ab7749c21ffb26e4771a9a0a328f)
2007-10-10r25138: More pstring elimination. Add a TALLOC_CTX parameterJeremy Allison1-8/+33
to unix_convert(). Jeremy. (This used to be commit 39c211a702e91c34c1a5a689e1b0c4530ea8a1ac)
2007-10-10r25136: When tallocing a string to uppercase remember the terminatingJeremy Allison1-1/+1
'\0' in size calculations. Jeremy. (This used to be commit 54c658867db3b6c602080d60936abab3af26e112)
2007-10-10r25120: One more warning.Jeremy Allison1-1/+1
Jeremy. (This used to be commit 9cc70e3ccff9c3b20076572235d9dcbfd23e97e5)
2007-10-10r25117: The mega-patch Jerry was waiting for. Remove all pstrings fromJeremy Allison1-1/+5
the main server code paths. We should now be able to cope with paths up to PATH_MAX length now. Final job will be to add the TALLOC_CTX * parameter to unix_convert to make it explicit (for Volker). Jeremy. (This used to be commit 7f0db75fb0f24873577dcb758a2ecee74fdc4297)