summaryrefslogtreecommitdiffstats
path: root/src/lib
diff options
context:
space:
mode:
authorKen Raeburn <raeburn@mit.edu>1990-11-08 13:47:50 +0000
committerKen Raeburn <raeburn@mit.edu>1990-11-08 13:47:50 +0000
commit9efe7f0abf07614cd89f58d07d94feac3efad520 (patch)
tree2587aa334e239374dfd7ccda2a3787c6967b96e2 /src/lib
parent9d050a3aef9f2a6ffc3ef478f659bf473812bb97 (diff)
downloadkrb5-9efe7f0abf07614cd89f58d07d94feac3efad520.tar.gz
krb5-9efe7f0abf07614cd89f58d07d94feac3efad520.tar.xz
krb5-9efe7f0abf07614cd89f58d07d94feac3efad520.zip
Added routines to write authdata structures
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@1423 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/krb5/ccache/stdio/scc_write.c36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/lib/krb5/ccache/stdio/scc_write.c b/src/lib/krb5/ccache/stdio/scc_write.c
index 901fec571..e180437cc 100644
--- a/src/lib/krb5/ccache/stdio/scc_write.c
+++ b/src/lib/krb5/ccache/stdio/scc_write.c
@@ -223,3 +223,39 @@ krb5_scc_store_flags(id, f)
{
return krb5_scc_write(id, (char *) f, sizeof(krb5_flags));
}
+
+krb5_error_code
+krb5_scc_store_authdata(id, a)
+ krb5_ccache id;
+ krb5_authdata **a;
+{
+ krb5_error_code ret;
+ krb5_authdata **temp;
+ krb5_int32 i, length=0;
+
+ if (a != NULL) {
+ for (temp=a; *temp; temp++)
+ length++;
+ }
+
+ ret = krb5_scc_store_int32(id, &length);
+ CHECK(ret);
+ for (i=0; i<length; i++) {
+ ret = krb5_scc_store_authdatum (id, a[i]);
+ CHECK(ret);
+ }
+ return KRB5_OK;
+}
+
+krb5_error_code
+krb5_scc_store_authdatum (id, a)
+ krb5_ccache id;
+ krb5_authdata *a;
+{
+ krb5_error_code ret;
+ ret = krb5_scc_store_ui_2(id, &a->ad_type);
+ CHECK(ret);
+ ret = krb5_scc_store_int32(id, &a->length);
+ CHECK(ret);
+ return krb5_scc_write(id, a->contents, a->length);
+}