Commit Graph

449 Commits

Author SHA1 Message Date
Howard Chu
512c7ca273 ITS#6585 don't close invalid sockets 2010-07-21 23:41:17 +00:00
Kurt Zeilenga
3dadeb3efe happy belated New Year 2010-04-13 22:17:29 +00:00
Hallvard Furuseth
48048c5348 More ITS#6353 - relent a bit: accept terminating NUL byte, which AD can send 2009-11-04 11:17:03 +00:00
Hallvard Furuseth
989bd54914 For ITS#6353: Catch embedded NULs in BerValues converted to char* strings 2009-10-28 23:00:27 +00:00
Hallvard Furuseth
3a688d8d59 ITS#6348: Fix inverted LBER_USE_DER test in ber_put_seqorset() since rev 1.73 2009-10-23 20:39:54 +00:00
Hallvard Furuseth
068cf1c701 ITS#6344: return failure on failure in ber_put_ostring()/ber_put_bitstring() 2009-10-21 12:41:34 +00:00
Hallvard Furuseth
7e107de4d9 Fix comment describing BerElement.ber_usertag 2009-10-21 11:41:44 +00:00
Hallvard Furuseth
b0e6e73d1c ITS#6215 cleanup: Export ber_skip_element() to complement ber_peek_element() 2009-08-12 22:13:50 +00:00
Hallvard Furuseth
3e20bda971 Trying again: No need to maintain ber->ber_usertag except at ber_printf "!" 2009-08-12 22:12:15 +00:00
Hallvard Furuseth
3802aa5483 More ITS#6215: Catch malformed elements in ber_get_stringbvl().
Do not use ber_<first/next>_element(), which have no error return.
2009-08-07 19:26:11 +00:00
Hallvard Furuseth
bc20500e62 More ITS#6215: Define and use ber_tag_and_rest() and ber_<peek/skip>_element() 2009-08-07 19:15:26 +00:00
Hallvard Furuseth
95fbdcab4e More ITS#6215: Fix wrong fix in rev 1.121 2009-08-07 16:04:25 +00:00
Hallvard Furuseth
455c49ba3e Simplify struct bgbvr and ber_get_stringbvl(), preserving behavior. 2009-08-04 21:11:38 +00:00
Hallvard Furuseth
19b8065922 More ITS#6215: Fix va_arg integer types for ber_scanf "bei" & ber_printf "BX" 2009-07-29 23:03:10 +00:00
Hallvard Furuseth
8b3bb91e93 More ITS#6215: Fix ber_scanf(,"mMvVW",) cleanup on error:
Parse args correctly and free up memory.
Also set some lengths=0 and remove unneeded ptr==NULL tests before frees.
2009-07-29 22:38:19 +00:00
Hallvard Furuseth
886520f193 More ITS#6215: Free data to the memory context used to allocate it 2009-07-29 22:10:45 +00:00
Hallvard Furuseth
b6bad3e995 More ITS#6215:
Reject indefinite-length format in ber_skip_tag().  localize *len.
Reject broken and too large bitstrings in ber_get_bitstringa().
Simplify a number of functions somewhat - no functionality changes.
Remove unnecessary tests and ber_tag updates after ber_skip_tag().
2009-07-29 21:47:54 +00:00
Hallvard Furuseth
29aa1d07c7 For ITS#6215: No need to maintain ber->ber_usertag except at ber_printf "!" 2009-07-29 17:21:54 +00:00
Hallvard Furuseth
4bed42ae5a For ITS#6215: Do not expose obsolete Seqorset. Note ber_write(,,,nonzero) is gone. 2009-07-29 17:07:52 +00:00
Hallvard Furuseth
36d2dc034d More ITS#6215 -
Speedup & less memory allocation:
  Simplify the work to encode tag, length, integer/enum, sequence/set.
  Drop struct seqorset and allocations of it.  Replace BerElement.ber_sos.
  Drop ber_write(,,,nonzero) support. Callers, if any, need to be rewritten.
  Make ber_log_sos_dump() and ber_sos_dump() stubs, they could no longer work.
Fix ber_write() buffer overrun after ber_start_seqorset().
Check overflow and max sizes, e.g. for functions returning int size.
Some cleanup, and handwaves in the direction of supporting CHAR_BIT>8.
Add/fix comments and a few descriptive types/macros.
2009-07-29 16:49:42 +00:00
Hallvard Furuseth
53f884ac1d Remove useless asserts that will be re-assert()ed before the variable is used 2009-07-29 15:06:28 +00:00
Hallvard Furuseth
12a6f3e055 ITS#6215: Fix buffer overrun and write through NULL pointer 2009-07-29 14:57:09 +00:00
Hallvard Furuseth
4b01f4b23a ITS#6080 again: simplify ber_strnlen, don't use strnlen, revert _GNU_SOURCE 2009-05-01 03:10:25 +00:00
Hallvard Furuseth
4e3f04edc3 Fix previous fix: Don't #ifdef HAVE_STRNLEN before portable.h #defines that 2009-05-01 02:17:28 +00:00
Hallvard Furuseth
a59f93f32f Update previous commit: #define _GNU_SOURCE if needed for strnlen() 2009-05-01 02:11:42 +00:00
Pierangelo Masarati
85b47ab0e7 define and use ber_strnlen() (ITS#6080); please regenerate configure and include/portable.hin 2009-04-29 11:38:31 +00:00
Howard Chu
d39bd12e9f Skip redundant PACKETS logging 2009-03-13 23:10:37 +00:00
Howard Chu
07e79f26a4 Revert prev commit 2009-02-10 21:29:56 +00:00
Pierangelo Masarati
2b95e7d288 partially addresses an issue with ITS#5931 2009-02-10 12:44:12 +00:00
Kurt Zeilenga
4af9eb9715 Update copyright notices 2009-01-22 00:40:04 +00:00
Hallvard Furuseth
4028c83c67 ber_decode_oid(): Fix typo in comment 2008-08-06 13:36:53 +00:00
Howard Chu
aebcd93721 ITS#5580: Revert prev commit, failed on byte-at-a-time input. Different
approach used here.
2008-07-02 01:33:15 +00:00
Howard Chu
14f1138ab5 ITS#5580 fix length decoding, verified with PROTOS 2008-06-27 02:36:41 +00:00
Kurt Zeilenga
c890c96d13 Happy New Year (belated) 2008-01-08 00:19:56 +00:00
Howard Chu
2701782cba ITS#5224 add any necessary socket libraries 2007-11-12 07:59:54 +00:00
Howard Chu
bdac543b3b Cleanup debug calls 2007-10-18 01:35:07 +00:00
Howard Chu
670febf7d5 ITS#5105 from Alexey Melnikov @ isode 2007-08-24 21:58:20 +00:00
Hallvard Furuseth
973a2b41b7 Make LDAP_MEMORY_DEBUG a bitmask. #define LDAP_MEMORY_DEBUG_ASSERT. ITS#4990. 2007-07-24 20:53:23 +00:00
Hallvard Furuseth
17afb33c19 ITS#5010: OID encode/decode fixes and paranoia. #define LBER_OID_COMPONENT_MAX. 2007-07-23 12:57:23 +00:00
Hallvard Furuseth
e1d42189fa ITS#4990: Fix LDAP_MEMORY_DEBUG and LDAP_MEMORY_DEBUG=0 compilation.
Declare ber_int_meminuse.  Fix '#if' -> '#ifdef' LDAP_MEMORY_DEBUG.
2007-07-04 22:55:24 +00:00
Hallvard Furuseth
bfdb026fab ITS#5007: Remove void* pointer arithmetic, that's a gcc extension. 2007-06-09 23:41:36 +00:00
Hallvard Furuseth
3750520f6f Fix HP-UX crash: Replace socklen_t with ber_socklen_t from configure. ITS#4629. 2007-06-09 23:35:20 +00:00
Hallvard Furuseth
bbc719ca56 ITS#4948: '#if <undefined macro>' -> '#ifdef' warning cleanup 2007-05-09 18:17:10 +00:00
Hallvard Furuseth
545b5555fb ber_decode_oid(), ber_encode_oid(): cast bv_val to unsigned char* 2007-04-04 17:51:10 +00:00
Howard Chu
c6df30118f ITS#4893 fix prev commit 2007-03-25 12:18:06 +00:00
Howard Chu
7426ab07fc ITS#4893 define LDAP_PF_LOCAL_SENDMSG in <ac/socket.h> if a message must
be sent to transmit client credentials. Buffer the message data.
2007-03-25 04:40:22 +00:00
Howard Chu
724784e6cb Use AC_MEMCPY 2007-03-25 04:31:34 +00:00
Howard Chu
b213588f95 Add options for ber_get_stringbv() to omit NUL-terminator, to allow
non-destructive in-place parsing
2007-03-23 15:27:38 +00:00
Howard Chu
9fe8f72310 Add DER OID encoder/decoder 2007-03-20 15:10:16 +00:00
Howard Chu
23ba7dfa12 Add ber_skip_data() to help positioning in structured BER data 2007-03-20 12:29:06 +00:00