fix for storage change
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@11021 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1997 - 2001 Kungliga Tekniska H<>gskolan
|
* Copyright (c) 1997 - 2002 Kungliga Tekniska H<>gskolan
|
||||||
* (Royal Institute of Technology, Stockholm, Sweden).
|
* (Royal Institute of Technology, Stockholm, Sweden).
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
@@ -404,7 +404,7 @@ kadmind_dispatch(void *kadm_handle, krb5_boolean initial,
|
|||||||
return 0;
|
return 0;
|
||||||
fail:
|
fail:
|
||||||
krb5_warn(context->context, ret, "%s", op);
|
krb5_warn(context->context, ret, "%s", op);
|
||||||
sp->seek(sp, 0, SEEK_SET);
|
krb5_storage_seek(sp, 0, SEEK_SET);
|
||||||
krb5_store_int32(sp, ret);
|
krb5_store_int32(sp, ret);
|
||||||
krb5_storage_to_data(sp, out);
|
krb5_storage_to_data(sp, out);
|
||||||
krb5_storage_free(sp);
|
krb5_storage_free(sp);
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1999 - 2001 Kungliga Tekniska H<>gskolan
|
* Copyright (c) 1999 - 2002 Kungliga Tekniska H<>gskolan
|
||||||
* (Royal Institute of Technology, Stockholm, Sweden).
|
* (Royal Institute of Technology, Stockholm, Sweden).
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
@@ -61,13 +61,13 @@ make_you_loose_packet(int code, krb5_data *reply)
|
|||||||
static int
|
static int
|
||||||
ret_fields(krb5_storage *sp, char *fields)
|
ret_fields(krb5_storage *sp, char *fields)
|
||||||
{
|
{
|
||||||
return sp->fetch(sp, fields, FLDSZ);
|
return krb5_storage_read(sp, fields, FLDSZ);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
store_fields(krb5_storage *sp, char *fields)
|
store_fields(krb5_storage *sp, char *fields)
|
||||||
{
|
{
|
||||||
return sp->store(sp, fields, FLDSZ);
|
return krb5_storage_write(sp, fields, FLDSZ);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@@ -470,8 +470,8 @@ kadm_ser_cpw(krb5_context context,
|
|||||||
krb5_warnx(context, "v4-compat %s: CHPASS %s",
|
krb5_warnx(context, "v4-compat %s: CHPASS %s",
|
||||||
principal_string, principal_string);
|
principal_string, principal_string);
|
||||||
|
|
||||||
ret = message->fetch(message, key + 4, 4);
|
ret = krb5_storage_read(message, key + 4, 4);
|
||||||
ret = message->fetch(message, key, 4);
|
ret = krb5_storage_read(message, key, 4);
|
||||||
ret = krb5_ret_stringz(message, &password);
|
ret = krb5_ret_stringz(message, &password);
|
||||||
|
|
||||||
if(password) {
|
if(password) {
|
||||||
@@ -740,7 +740,7 @@ dispatch(krb5_context context,
|
|||||||
krb5_ret_int8(sp_in, &command);
|
krb5_ret_int8(sp_in, &command);
|
||||||
|
|
||||||
sp_out = krb5_storage_emem();
|
sp_out = krb5_storage_emem();
|
||||||
sp_out->store(sp_out, KADM_VERSTR, KADM_VERSIZE);
|
krb5_storage_write(sp_out, KADM_VERSTR, KADM_VERSIZE);
|
||||||
krb5_store_int32(sp_out, 0);
|
krb5_store_int32(sp_out, 0);
|
||||||
|
|
||||||
switch(command) {
|
switch(command) {
|
||||||
@@ -777,7 +777,7 @@ dispatch(krb5_context context,
|
|||||||
}
|
}
|
||||||
krb5_storage_free(sp_in);
|
krb5_storage_free(sp_in);
|
||||||
if(retval) {
|
if(retval) {
|
||||||
sp_out->seek(sp_out, KADM_VERSIZE, SEEK_SET);
|
krb5_storage_seek(sp_out, KADM_VERSIZE, SEEK_SET);
|
||||||
krb5_store_int32(sp_out, retval);
|
krb5_store_int32(sp_out, retval);
|
||||||
}
|
}
|
||||||
krb5_storage_to_data(sp_out, reply);
|
krb5_storage_to_data(sp_out, reply);
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1997 - 2000 Kungliga Tekniska H<>gskolan
|
* Copyright (c) 1997 - 2000, 2002 Kungliga Tekniska H<>gskolan
|
||||||
* (Royal Institute of Technology, Stockholm, Sweden).
|
* (Royal Institute of Technology, Stockholm, Sweden).
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
@@ -108,8 +108,8 @@ krb_mk_req(KTEXT authent,
|
|||||||
|
|
||||||
krb5_store_int8(sp, req.length);
|
krb5_store_int8(sp, req.length);
|
||||||
|
|
||||||
sp->store(sp, cr.ticket_st.dat, cr.ticket_st.length);
|
krb5_storage_write(sp, cr.ticket_st.dat, cr.ticket_st.length);
|
||||||
sp->store(sp, req.dat, req.length);
|
krb5_storage_write(sp, req.dat, req.length);
|
||||||
krb5_storage_to_data(sp, &a);
|
krb5_storage_to_data(sp, &a);
|
||||||
krb5_storage_free(sp);
|
krb5_storage_free(sp);
|
||||||
memcpy(authent->dat, a.data, a.length);
|
memcpy(authent->dat, a.data, a.length);
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1999-2001 Kungliga Tekniska H<>gskolan
|
* Copyright (c) 1999-2002 Kungliga Tekniska H<>gskolan
|
||||||
* (Royal Institute of Technology, Stockholm, Sweden).
|
* (Royal Institute of Technology, Stockholm, Sweden).
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
@@ -71,7 +71,7 @@ append_string(krb5_context context, krb5_storage *sp, const char *fmt, ...)
|
|||||||
krb5_set_error_string(context, "malloc: out of memory");
|
krb5_set_error_string(context, "malloc: out of memory");
|
||||||
return ENOMEM;
|
return ENOMEM;
|
||||||
}
|
}
|
||||||
ret = sp->store(sp, s, strlen(s));
|
ret = krb5_storage_write(sp, s, strlen(s));
|
||||||
free(s);
|
free(s);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
@@ -226,7 +226,7 @@ hdb_entry2string (krb5_context context, hdb_entry *ent, char **str)
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
sp->store(sp, "\0", 1);
|
krb5_storage_write(sp, "\0", 1);
|
||||||
krb5_storage_to_data(sp, &data);
|
krb5_storage_to_data(sp, &data);
|
||||||
krb5_storage_free(sp);
|
krb5_storage_free(sp);
|
||||||
*str = data.data;
|
*str = data.data;
|
||||||
@@ -256,7 +256,7 @@ hdb_print_entry(krb5_context context, HDB *db, hdb_entry *entry, void *data)
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
sp->store(sp, "\n", 1);
|
krb5_storage_write(sp, "\n", 1);
|
||||||
krb5_storage_free(sp);
|
krb5_storage_free(sp);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1997 - 2000 Kungliga Tekniska H<>gskolan
|
* Copyright (c) 1997 - 2002 Kungliga Tekniska H<>gskolan
|
||||||
* (Royal Institute of Technology, Stockholm, Sweden).
|
* (Royal Institute of Technology, Stockholm, Sweden).
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
@@ -59,14 +59,14 @@ print_entry(kadm5_server_context *server_context,
|
|||||||
krb5_storage *sp)
|
krb5_storage *sp)
|
||||||
{
|
{
|
||||||
char t[256];
|
char t[256];
|
||||||
u_int32_t mask;
|
int32_t mask;
|
||||||
hdb_entry ent;
|
hdb_entry ent;
|
||||||
krb5_principal source;
|
krb5_principal source;
|
||||||
char *name1, *name2;
|
char *name1, *name2;
|
||||||
krb5_data data;
|
krb5_data data;
|
||||||
krb5_context context = server_context->context;
|
krb5_context context = server_context->context;
|
||||||
|
|
||||||
off_t end = sp->seek(sp, 0, SEEK_CUR) + len;
|
off_t end = krb5_storage_seek(sp, 0, SEEK_CUR) + len;
|
||||||
|
|
||||||
krb5_error_code ret;
|
krb5_error_code ret;
|
||||||
|
|
||||||
@@ -74,7 +74,7 @@ print_entry(kadm5_server_context *server_context,
|
|||||||
|
|
||||||
if(op < kadm_get || op > kadm_nop) {
|
if(op < kadm_get || op > kadm_nop) {
|
||||||
printf("unknown op: %d\n", op);
|
printf("unknown op: %d\n", op);
|
||||||
sp->seek(sp, end, SEEK_SET);
|
krb5_storage_seek(sp, end, SEEK_SET);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -91,7 +91,7 @@ print_entry(kadm5_server_context *server_context,
|
|||||||
case kadm_rename:
|
case kadm_rename:
|
||||||
krb5_data_alloc(&data, len);
|
krb5_data_alloc(&data, len);
|
||||||
krb5_ret_principal(sp, &source);
|
krb5_ret_principal(sp, &source);
|
||||||
sp->fetch(sp, data.data, data.length);
|
krb5_storage_read(sp, data.data, data.length);
|
||||||
hdb_value2entry(context, &data, &ent);
|
hdb_value2entry(context, &data, &ent);
|
||||||
krb5_unparse_name(context, source, &name1);
|
krb5_unparse_name(context, source, &name1);
|
||||||
krb5_unparse_name(context, ent.principal, &name2);
|
krb5_unparse_name(context, ent.principal, &name2);
|
||||||
@@ -103,7 +103,7 @@ print_entry(kadm5_server_context *server_context,
|
|||||||
break;
|
break;
|
||||||
case kadm_create:
|
case kadm_create:
|
||||||
krb5_data_alloc(&data, len);
|
krb5_data_alloc(&data, len);
|
||||||
sp->fetch(sp, data.data, data.length);
|
krb5_storage_read(sp, data.data, data.length);
|
||||||
ret = hdb_value2entry(context, &data, &ent);
|
ret = hdb_value2entry(context, &data, &ent);
|
||||||
if(ret)
|
if(ret)
|
||||||
abort();
|
abort();
|
||||||
@@ -112,7 +112,7 @@ print_entry(kadm5_server_context *server_context,
|
|||||||
case kadm_modify:
|
case kadm_modify:
|
||||||
krb5_data_alloc(&data, len);
|
krb5_data_alloc(&data, len);
|
||||||
krb5_ret_int32(sp, &mask);
|
krb5_ret_int32(sp, &mask);
|
||||||
sp->fetch(sp, data.data, data.length);
|
krb5_storage_read(sp, data.data, data.length);
|
||||||
ret = hdb_value2entry(context, &data, &ent);
|
ret = hdb_value2entry(context, &data, &ent);
|
||||||
if(ret)
|
if(ret)
|
||||||
abort();
|
abort();
|
||||||
@@ -204,7 +204,7 @@ print_entry(kadm5_server_context *server_context,
|
|||||||
default:
|
default:
|
||||||
abort();
|
abort();
|
||||||
}
|
}
|
||||||
sp->seek(sp, end, SEEK_SET);
|
krb5_storage_seek(sp, end, SEEK_SET);
|
||||||
}
|
}
|
||||||
|
|
||||||
static char *realm;
|
static char *realm;
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1997 - 2001 Kungliga Tekniska H<>gskolan
|
* Copyright (c) 1997 - 2002 Kungliga Tekniska H<>gskolan
|
||||||
* (Royal Institute of Technology, Stockholm, Sweden).
|
* (Royal Institute of Technology, Stockholm, Sweden).
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
@@ -280,11 +280,11 @@ send_diffs (krb5_context context, slave *s, int log_fd,
|
|||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
sp = kadm5_log_goto_end (log_fd);
|
sp = kadm5_log_goto_end (log_fd);
|
||||||
right = sp->seek(sp, 0, SEEK_CUR);
|
right = krb5_storage_seek(sp, 0, SEEK_CUR);
|
||||||
for (;;) {
|
for (;;) {
|
||||||
if (kadm5_log_previous (sp, &ver, ×tamp, &op, &len))
|
if (kadm5_log_previous (sp, &ver, ×tamp, &op, &len))
|
||||||
abort ();
|
abort ();
|
||||||
left = sp->seek(sp, -16, SEEK_CUR);
|
left = krb5_storage_seek(sp, -16, SEEK_CUR);
|
||||||
if (ver == s->version)
|
if (ver == s->version)
|
||||||
return 0;
|
return 0;
|
||||||
if (ver == s->version + 1)
|
if (ver == s->version + 1)
|
||||||
@@ -293,7 +293,7 @@ send_diffs (krb5_context context, slave *s, int log_fd,
|
|||||||
return send_complete (context, s, database, current_version);
|
return send_complete (context, s, database, current_version);
|
||||||
}
|
}
|
||||||
krb5_data_alloc (&data, right - left + 4);
|
krb5_data_alloc (&data, right - left + 4);
|
||||||
sp->fetch (sp, (char *)data.data + 4, data.length - 4);
|
krb5_storage_read (sp, (char *)data.data + 4, data.length - 4);
|
||||||
krb5_storage_free(sp);
|
krb5_storage_free(sp);
|
||||||
|
|
||||||
_krb5_put_int(data.data, FOR_YOU, 4);
|
_krb5_put_int(data.data, FOR_YOU, 4);
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1997 - 2001 Kungliga Tekniska H<>gskolan
|
* Copyright (c) 1997 - 2002 Kungliga Tekniska H<>gskolan
|
||||||
* (Royal Institute of Technology, Stockholm, Sweden).
|
* (Royal Institute of Technology, Stockholm, Sweden).
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
@@ -159,23 +159,23 @@ receive_loop (krb5_context context,
|
|||||||
op = tmp;
|
op = tmp;
|
||||||
krb5_ret_int32 (sp, &len);
|
krb5_ret_int32 (sp, &len);
|
||||||
if (vers <= server_context->log_context.version)
|
if (vers <= server_context->log_context.version)
|
||||||
sp->seek(sp, len, SEEK_CUR);
|
krb5_storage_seek(sp, len, SEEK_CUR);
|
||||||
} while(vers <= server_context->log_context.version);
|
} while(vers <= server_context->log_context.version);
|
||||||
|
|
||||||
left = sp->seek (sp, -16, SEEK_CUR);
|
left = krb5_storage_seek (sp, -16, SEEK_CUR);
|
||||||
right = sp->seek (sp, 0, SEEK_END);
|
right = krb5_storage_seek (sp, 0, SEEK_END);
|
||||||
buf = malloc (right - left);
|
buf = malloc (right - left);
|
||||||
if (buf == NULL && (right - left) != 0) {
|
if (buf == NULL && (right - left) != 0) {
|
||||||
krb5_warnx (context, "malloc: no memory");
|
krb5_warnx (context, "malloc: no memory");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
sp->seek (sp, left, SEEK_SET);
|
krb5_storage_seek (sp, left, SEEK_SET);
|
||||||
sp->fetch (sp, buf, right - left);
|
krb5_storage_read (sp, buf, right - left);
|
||||||
write (server_context->log_context.log_fd, buf, right-left);
|
write (server_context->log_context.log_fd, buf, right-left);
|
||||||
fsync (server_context->log_context.log_fd);
|
fsync (server_context->log_context.log_fd);
|
||||||
free (buf);
|
free (buf);
|
||||||
|
|
||||||
sp->seek (sp, left, SEEK_SET);
|
krb5_storage_seek (sp, left, SEEK_SET);
|
||||||
|
|
||||||
for(;;) {
|
for(;;) {
|
||||||
int32_t len, timestamp, tmp;
|
int32_t len, timestamp, tmp;
|
||||||
@@ -194,7 +194,7 @@ receive_loop (krb5_context context,
|
|||||||
krb5_warn (context, ret, "kadm5_log_replay");
|
krb5_warn (context, ret, "kadm5_log_replay");
|
||||||
else
|
else
|
||||||
server_context->log_context.version = vers;
|
server_context->log_context.version = vers;
|
||||||
sp->seek (sp, 8, SEEK_CUR);
|
krb5_storage_seek (sp, 8, SEEK_CUR);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1997 - 2000 Kungliga Tekniska H<>gskolan
|
* Copyright (c) 1997 - 2002 Kungliga Tekniska H<>gskolan
|
||||||
* (Royal Institute of Technology, Stockholm, Sweden).
|
* (Royal Institute of Technology, Stockholm, Sweden).
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
@@ -64,7 +64,7 @@ kadm5_log_get_version_fd (int fd,
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
sp = krb5_storage_from_fd (fd);
|
sp = krb5_storage_from_fd (fd);
|
||||||
sp->seek(sp, -4, SEEK_CUR);
|
krb5_storage_seek(sp, -4, SEEK_CUR);
|
||||||
krb5_ret_int32 (sp, &old_version);
|
krb5_ret_int32 (sp, &old_version);
|
||||||
*ver = old_version;
|
*ver = old_version;
|
||||||
krb5_storage_free(sp);
|
krb5_storage_free(sp);
|
||||||
@@ -237,7 +237,7 @@ kadm5_log_create (kadm5_server_context *context,
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
krb5_store_int32 (sp, value.length);
|
krb5_store_int32 (sp, value.length);
|
||||||
sp->store(sp, value.data, value.length);
|
krb5_storage_write(sp, value.data, value.length);
|
||||||
krb5_store_int32 (sp, value.length);
|
krb5_store_int32 (sp, value.length);
|
||||||
krb5_data_free (&value);
|
krb5_data_free (&value);
|
||||||
ret = kadm5_log_postamble (log_context, sp);
|
ret = kadm5_log_postamble (log_context, sp);
|
||||||
@@ -269,7 +269,7 @@ kadm5_log_replay_create (kadm5_server_context *context,
|
|||||||
hdb_entry ent;
|
hdb_entry ent;
|
||||||
|
|
||||||
krb5_data_alloc (&data, len);
|
krb5_data_alloc (&data, len);
|
||||||
sp->fetch (sp, data.data, len);
|
krb5_storage_read (sp, data.data, len);
|
||||||
ret = hdb_value2entry (context->context, &data, &ent);
|
ret = hdb_value2entry (context->context, &data, &ent);
|
||||||
krb5_data_free(&data);
|
krb5_data_free(&data);
|
||||||
if (ret)
|
if (ret)
|
||||||
@@ -300,12 +300,12 @@ kadm5_log_delete (kadm5_server_context *context,
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
krb5_store_int32 (sp, 0);
|
krb5_store_int32 (sp, 0);
|
||||||
off = sp->seek (sp, 0, SEEK_CUR);
|
off = krb5_storage_seek (sp, 0, SEEK_CUR);
|
||||||
krb5_store_principal (sp, princ);
|
krb5_store_principal (sp, princ);
|
||||||
len = sp->seek (sp, 0, SEEK_CUR) - off;
|
len = krb5_storage_seek (sp, 0, SEEK_CUR) - off;
|
||||||
sp->seek(sp, -(len + 4), SEEK_CUR);
|
krb5_storage_seek(sp, -(len + 4), SEEK_CUR);
|
||||||
krb5_store_int32 (sp, len);
|
krb5_store_int32 (sp, len);
|
||||||
sp->seek(sp, len, SEEK_CUR);
|
krb5_storage_seek(sp, len, SEEK_CUR);
|
||||||
krb5_store_int32 (sp, len);
|
krb5_store_int32 (sp, len);
|
||||||
if (ret) {
|
if (ret) {
|
||||||
krb5_storage_free (sp);
|
krb5_storage_free (sp);
|
||||||
@@ -373,15 +373,15 @@ kadm5_log_rename (kadm5_server_context *context,
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
krb5_store_int32 (sp, 0);
|
krb5_store_int32 (sp, 0);
|
||||||
off = sp->seek (sp, 0, SEEK_CUR);
|
off = krb5_storage_seek (sp, 0, SEEK_CUR);
|
||||||
krb5_store_principal (sp, source);
|
krb5_store_principal (sp, source);
|
||||||
sp->store(sp, value.data, value.length);
|
krb5_storage_write(sp, value.data, value.length);
|
||||||
krb5_data_free (&value);
|
krb5_data_free (&value);
|
||||||
len = sp->seek (sp, 0, SEEK_CUR) - off;
|
len = krb5_storage_seek (sp, 0, SEEK_CUR) - off;
|
||||||
|
|
||||||
sp->seek(sp, -(len + 4), SEEK_CUR);
|
krb5_storage_seek(sp, -(len + 4), SEEK_CUR);
|
||||||
krb5_store_int32 (sp, len);
|
krb5_store_int32 (sp, len);
|
||||||
sp->seek(sp, len, SEEK_CUR);
|
krb5_storage_seek(sp, len, SEEK_CUR);
|
||||||
krb5_store_int32 (sp, len);
|
krb5_store_int32 (sp, len);
|
||||||
if (ret) {
|
if (ret) {
|
||||||
krb5_storage_free (sp);
|
krb5_storage_free (sp);
|
||||||
@@ -417,12 +417,12 @@ kadm5_log_replay_rename (kadm5_server_context *context,
|
|||||||
off_t off;
|
off_t off;
|
||||||
size_t princ_len, data_len;
|
size_t princ_len, data_len;
|
||||||
|
|
||||||
off = sp->seek(sp, 0, SEEK_CUR);
|
off = krb5_storage_seek(sp, 0, SEEK_CUR);
|
||||||
krb5_ret_principal (sp, &source);
|
krb5_ret_principal (sp, &source);
|
||||||
princ_len = sp->seek(sp, 0, SEEK_CUR) - off;
|
princ_len = krb5_storage_seek(sp, 0, SEEK_CUR) - off;
|
||||||
data_len = len - princ_len;
|
data_len = len - princ_len;
|
||||||
krb5_data_alloc (&value, data_len);
|
krb5_data_alloc (&value, data_len);
|
||||||
sp->fetch (sp, value.data, data_len);
|
krb5_storage_read (sp, value.data, data_len);
|
||||||
ret = hdb_value2entry (context->context, &value, &target_ent);
|
ret = hdb_value2entry (context->context, &value, &target_ent);
|
||||||
krb5_data_free(&value);
|
krb5_data_free(&value);
|
||||||
if (ret) {
|
if (ret) {
|
||||||
@@ -472,7 +472,7 @@ kadm5_log_modify (kadm5_server_context *context,
|
|||||||
len = value.length + 4;
|
len = value.length + 4;
|
||||||
krb5_store_int32 (sp, len);
|
krb5_store_int32 (sp, len);
|
||||||
krb5_store_int32 (sp, mask);
|
krb5_store_int32 (sp, mask);
|
||||||
sp->store(sp, value.data, value.length);
|
krb5_storage_write (sp, value.data, value.length);
|
||||||
krb5_data_free (&value);
|
krb5_data_free (&value);
|
||||||
krb5_store_int32 (sp, len);
|
krb5_store_int32 (sp, len);
|
||||||
if (ret) {
|
if (ret) {
|
||||||
@@ -510,7 +510,7 @@ kadm5_log_replay_modify (kadm5_server_context *context,
|
|||||||
krb5_ret_int32 (sp, &mask);
|
krb5_ret_int32 (sp, &mask);
|
||||||
len -= 4;
|
len -= 4;
|
||||||
krb5_data_alloc (&value, len);
|
krb5_data_alloc (&value, len);
|
||||||
sp->fetch (sp, value.data, len);
|
krb5_storage_read (sp, value.data, len);
|
||||||
ret = hdb_value2entry (context->context, &value, &log_ent);
|
ret = hdb_value2entry (context->context, &value, &log_ent);
|
||||||
krb5_data_free(&value);
|
krb5_data_free(&value);
|
||||||
if (ret)
|
if (ret)
|
||||||
@@ -689,7 +689,7 @@ kadm5_log_foreach (kadm5_server_context *context,
|
|||||||
krb5_ret_int32 (sp, &op);
|
krb5_ret_int32 (sp, &op);
|
||||||
krb5_ret_int32 (sp, &len);
|
krb5_ret_int32 (sp, &len);
|
||||||
(*func)(context, ver, timestamp, op, len, sp);
|
(*func)(context, ver, timestamp, op, len, sp);
|
||||||
sp->seek(sp, 8, SEEK_CUR);
|
krb5_storage_seek(sp, 8, SEEK_CUR);
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@@ -704,7 +704,7 @@ kadm5_log_goto_end (int fd)
|
|||||||
krb5_storage *sp;
|
krb5_storage *sp;
|
||||||
|
|
||||||
sp = krb5_storage_from_fd (fd);
|
sp = krb5_storage_from_fd (fd);
|
||||||
sp->seek(sp, 0, SEEK_END);
|
krb5_storage_seek(sp, 0, SEEK_END);
|
||||||
return sp;
|
return sp;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -722,13 +722,13 @@ kadm5_log_previous (krb5_storage *sp,
|
|||||||
off_t off;
|
off_t off;
|
||||||
int32_t tmp;
|
int32_t tmp;
|
||||||
|
|
||||||
sp->seek(sp, -8, SEEK_CUR);
|
krb5_storage_seek(sp, -8, SEEK_CUR);
|
||||||
krb5_ret_int32 (sp, &tmp);
|
krb5_ret_int32 (sp, &tmp);
|
||||||
*len = tmp;
|
*len = tmp;
|
||||||
krb5_ret_int32 (sp, &tmp);
|
krb5_ret_int32 (sp, &tmp);
|
||||||
*ver = tmp;
|
*ver = tmp;
|
||||||
off = 24 + *len;
|
off = 24 + *len;
|
||||||
sp->seek(sp, -off, SEEK_CUR);
|
krb5_storage_seek(sp, -off, SEEK_CUR);
|
||||||
krb5_ret_int32 (sp, &tmp);
|
krb5_ret_int32 (sp, &tmp);
|
||||||
assert(tmp == *ver);
|
assert(tmp == *ver);
|
||||||
krb5_ret_int32 (sp, &tmp);
|
krb5_ret_int32 (sp, &tmp);
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1997, 1998, 1999, 2001 Kungliga Tekniska H<>gskolan
|
* Copyright (c) 1997-2002 Kungliga Tekniska H<>gskolan
|
||||||
* (Royal Institute of Technology, Stockholm, Sweden).
|
* (Royal Institute of Technology, Stockholm, Sweden).
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
@@ -51,7 +51,7 @@ apply_entry(kadm5_server_context *server_context,
|
|||||||
if((start_version != -1 && ver < start_version) ||
|
if((start_version != -1 && ver < start_version) ||
|
||||||
(end_version != -1 && ver > end_version)) {
|
(end_version != -1 && ver > end_version)) {
|
||||||
/* XXX skip this entry */
|
/* XXX skip this entry */
|
||||||
(*sp->seek)(sp, len, SEEK_CUR);
|
krb5_storage_seek(sp, len, SEEK_CUR);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
printf ("ver %u... ", ver);
|
printf ("ver %u... ", ver);
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1997, 1999 Kungliga Tekniska H<>gskolan
|
* Copyright (c) 1997-2002 Kungliga Tekniska H<>gskolan
|
||||||
* (Royal Institute of Technology, Stockholm, Sweden).
|
* (Royal Institute of Technology, Stockholm, Sweden).
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
@@ -45,10 +45,10 @@ _kadm5_client_send(kadm5_client_context *context, krb5_storage *sp)
|
|||||||
|
|
||||||
assert(context->sock != -1);
|
assert(context->sock != -1);
|
||||||
|
|
||||||
len = sp->seek(sp, 0, SEEK_CUR);
|
len = krb5_storage_seek(sp, 0, SEEK_CUR);
|
||||||
ret = krb5_data_alloc(&msg, len);
|
ret = krb5_data_alloc(&msg, len);
|
||||||
sp->seek(sp, 0, SEEK_SET);
|
krb5_storage_seek(sp, 0, SEEK_SET);
|
||||||
sp->fetch(sp, msg.data, msg.length);
|
krb5_storage_read(sp, msg.data, msg.length);
|
||||||
|
|
||||||
ret = krb5_mk_priv(context->context, context->ac, &msg, &out, NULL);
|
ret = krb5_mk_priv(context->context, context->ac, &msg, &out, NULL);
|
||||||
krb5_data_free(&msg);
|
krb5_data_free(&msg);
|
||||||
|
Reference in New Issue
Block a user