From 7dbfbd286595c3167cf275cf0ea0b8583ee332b1 Mon Sep 17 00:00:00 2001 From: Kurt Zeilenga Date: Fri, 15 Oct 1999 17:59:23 +0000 Subject: [PATCH] ITS#325: use simple pointer arithmetic to avoid problems on systems with odd pointer representations (such as Cray T90). --- CHANGES | 1 + libraries/liblber/io.c | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/CHANGES b/CHANGES index fea34e50dc..44579bab14 100644 --- a/CHANGES +++ b/CHANGES @@ -6,6 +6,7 @@ Changes included in OpenLDAP 1.2 Release Engineering Fixed slapd li_nextid_file uninitialized bug Fixed -lldap templates y2k bug (ITS#294) Fixed ldbm db_appinit to use u_int32_t instead of int (ITS#295) + Fixed lber/io.c Cray T90 specific pointer arithmetic problem (ITS#325) Documentation Reference Quick Start Guide in README and INSTALL ldappasswd(1) fix -c vs -H typo (ITS#154) diff --git a/libraries/liblber/io.c b/libraries/liblber/io.c index c4cc8d243a..105046d285 100644 --- a/libraries/liblber/io.c +++ b/libraries/liblber/io.c @@ -559,7 +559,8 @@ ber_get_next( Sockbuf *sb, unsigned long *len, BerElement *ber ) ber->ber_rwptr = ber->ber_buf; } - toread = (unsigned long)ber->ber_end - (unsigned long)ber->ber_rwptr; + toread = ber->ber_end - ber->ber_rwptr; + do { if ( (rc = BerRead( sb, ber->ber_rwptr, (long)toread )) <= 0 ) { return( LBER_DEFAULT ); -- 2.39.5