diff --git a/appl/test/gss_common.c b/appl/test/gss_common.c new file mode 100644 index 000000000..2ad074da0 --- /dev/null +++ b/appl/test/gss_common.c @@ -0,0 +1,36 @@ +#include "test_locl.h" +#include +RCSID("$Id$"); + +void +write_token (int sock, gss_buffer_t buf) +{ + u_int32_t len, net_len; + OM_uint32 min_stat; + + len = buf->length; + + net_len = htonl(len); + + if (write (sock, &net_len, 4) != 4) + err (1, "write"); + if (write (sock, buf->value, len) != len) + err (1, "write"); + + gss_release_buffer (&min_stat, buf); +} + +void +read_token (int sock, gss_buffer_t buf) +{ + u_int32_t len, net_len; + + if (read(sock, &net_len, 4) != 4) + err (1, "read"); + len = ntohl(net_len); + buf->length = len; + buf->value = malloc(len); + if (read (sock, buf->value, len) != len) + err (1, "read"); +} + diff --git a/appl/test/gss_common.h b/appl/test/gss_common.h new file mode 100644 index 000000000..ab33d6874 --- /dev/null +++ b/appl/test/gss_common.h @@ -0,0 +1,8 @@ +/* $Id$ */ + +#include "test_locl.h" +#include +RCSID("$Id$"); + +void write_token (int sock, gss_buffer_t buf); +void read_token (int sock, gss_buffer_t buf);