diff options
| author | Ken Raeburn <raeburn@mit.edu> | 2006-03-08 04:18:31 +0000 |
|---|---|---|
| committer | Ken Raeburn <raeburn@mit.edu> | 2006-03-08 04:18:31 +0000 |
| commit | 59a772e257ac9012eaecd8c35f27c1e4630c80b0 (patch) | |
| tree | d45b13209b4f216a33128e3b40d48e56c1a7fe68 /src/include/krb5 | |
| parent | 9a96c5372db9476322e689277469a56a5b4552be (diff) | |
Enable compilation of little-endian unaligned load/store helper
functions in k5-platform.h, and use them in kdb encoding/decoding
macros.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17710 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/include/krb5')
| -rw-r--r-- | src/include/krb5/ChangeLog | 8 | ||||
| -rw-r--r-- | src/include/krb5/kdb.h | 23 |
2 files changed, 13 insertions, 18 deletions
diff --git a/src/include/krb5/ChangeLog b/src/include/krb5/ChangeLog index bbc1d8b97..2a7ca9a32 100644 --- a/src/include/krb5/ChangeLog +++ b/src/include/krb5/ChangeLog @@ -1,3 +1,11 @@ +2006-03-07 Ken Raeburn <raeburn@mit.edu> + + * kdb.h: Include k5-platform.h. + (krb5_kdb_decode_int16, krb5_kdb_decode_int32): Use load_*_le + helper functions. + (krb5_kdb_encode_int16, krb5_kdb_encode_int32): Use store_*_le + helper functions. + 2006-03-06 Ken Raeburn <raeburn@mit.edu> * Makefile.in (PROCESS_REPLACE): Use MODULE_DIR instead of diff --git a/src/include/krb5/kdb.h b/src/include/krb5/kdb.h index c93ac96c4..c8327657f 100644 --- a/src/include/krb5/kdb.h +++ b/src/include/krb5/kdb.h @@ -194,26 +194,13 @@ extern char *krb5_mkey_pwd_prompt2; * * Data encoding is little-endian. */ +#include "k5-platform.h" #define krb5_kdb_decode_int16(cp, i16) \ - *((krb5_int16 *) &(i16)) = (((krb5_int16) ((unsigned char) (cp)[0]))| \ - ((krb5_int16) ((unsigned char) (cp)[1]) << 8)) + *((krb5_int16 *) &(i16)) = load_16_le(cp) #define krb5_kdb_decode_int32(cp, i32) \ - *((krb5_int32 *) &(i32)) = (((krb5_int32) ((unsigned char) (cp)[0]))| \ - ((krb5_int32) ((unsigned char) (cp)[1]) << 8) | \ - ((krb5_int32) ((unsigned char) (cp)[2]) << 16)| \ - ((krb5_int32) ((unsigned char) (cp)[3]) << 24)) -#define krb5_kdb_encode_int16(i16, cp) \ - { \ - (cp)[0] = (unsigned char) ((i16) & 0xff); \ - (cp)[1] = (unsigned char) (((i16) >> 8) & 0xff); \ - } -#define krb5_kdb_encode_int32(i32, cp) \ - { \ - (cp)[0] = (unsigned char) ((i32) & 0xff); \ - (cp)[1] = (unsigned char) (((i32) >> 8) & 0xff); \ - (cp)[2] = (unsigned char) (((i32) >> 16) & 0xff); \ - (cp)[3] = (unsigned char) (((i32) >> 24) & 0xff); \ - } + *((krb5_int32 *) &(i32)) = load_32_le(cp) +#define krb5_kdb_encode_int16(i16, cp) store_16_le(i16, cp) +#define krb5_kdb_encode_int32(i32, cp) store_32_le(i32, cp) #define KRB5_KDB_OPEN_RW 0 #define KRB5_KDB_OPEN_RO 1 |
