ipa-pwd_extop: use endian.h instead of nih function

This commit is contained in:
Simo Sorce 2011-06-15 17:54:47 -04:00
parent e261c55626
commit c42cf02405
3 changed files with 8 additions and 10 deletions

View File

@ -692,6 +692,7 @@ static int ipapwd_setkeytab(Slapi_PBlock *pb, struct ipapwd_krbcfg *krbcfg)
krb5_enc_data cipher; krb5_enc_data cipher;
struct berval tval; struct berval tval;
krb5_octet *kdata; krb5_octet *kdata;
krb5_int16 t;
size_t klen; size_t klen;
i = kset->num_keys; i = kset->num_keys;
@ -752,7 +753,8 @@ static int ipapwd_setkeytab(Slapi_PBlock *pb, struct ipapwd_krbcfg *krbcfg)
LOG_OOM(); LOG_OOM();
goto free_and_return; goto free_and_return;
} }
encode_int16(plain.length, kdata); t = htole16(plain.length);
memcpy(kdata, &t, 2);
kset->keys[i].ekey->value.bv_len = 2 + klen; kset->keys[i].ekey->value.bv_len = 2 + klen;
kset->keys[i].ekey->value.bv_val = (char *)kdata; kset->keys[i].ekey->value.bv_val = (char *)kdata;

View File

@ -154,7 +154,6 @@ struct ipapwd_keyset {
int num_keys; int num_keys;
}; };
void encode_int16(unsigned int val, unsigned char *p);
struct berval *encode_keys(struct ipapwd_keyset *kset); struct berval *encode_keys(struct ipapwd_keyset *kset);
void ipapwd_keyset_free(struct ipapwd_keyset **pkset); void ipapwd_keyset_free(struct ipapwd_keyset **pkset);

View File

@ -52,6 +52,8 @@
#include <lber.h> #include <lber.h>
#include <time.h> #include <time.h>
#include <endian.h>
#include "ipapwd.h" #include "ipapwd.h"
#include "util.h" #include "util.h"
#include "ipa_krb5.h" #include "ipa_krb5.h"
@ -242,13 +244,6 @@ void ipapwd_keyset_free(struct ipapwd_keyset **pkset)
*pkset = NULL; *pkset = NULL;
} }
void encode_int16(unsigned int val, unsigned char *p)
{
p[1] = (val >> 8) & 0xff;
p[0] = (val ) & 0xff;
}
static Slapi_Value **encrypt_encode_key(struct ipapwd_krbcfg *krbcfg, static Slapi_Value **encrypt_encode_key(struct ipapwd_krbcfg *krbcfg,
struct ipapwd_data *data, struct ipapwd_data *data,
char **errMesg) char **errMesg)
@ -331,6 +326,7 @@ static Slapi_Value **encrypt_encode_key(struct ipapwd_krbcfg *krbcfg,
krb5_octet *ptr; krb5_octet *ptr;
krb5_data plain; krb5_data plain;
krb5_enc_data cipher; krb5_enc_data cipher;
krb5_int16 t;
size_t len; size_t len;
const char *p; const char *p;
@ -450,7 +446,8 @@ static Slapi_Value **encrypt_encode_key(struct ipapwd_krbcfg *krbcfg,
goto enc_error; goto enc_error;
} }
encode_int16(key.length, ptr); t = htole16(key.length);
memcpy(ptr, &t, 2);
plain.length = key.length; plain.length = key.length;
plain.data = (char *)key.contents; plain.data = (char *)key.contents;