[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
CVS gsasl/tests
From: |
gsasl-commit |
Subject: |
CVS gsasl/tests |
Date: |
Thu, 14 Oct 2004 21:18:19 +0200 |
Update of /home/cvs/gsasl/tests
In directory dopio:/tmp/cvs-serv3327
Modified Files:
Makefile.am digest-md5.c md5file.c
Added Files:
gssapi.key gssapi.tkt old-gssapi.c
Log Message:
Add.
--- /home/cvs/gsasl/tests/Makefile.am 2004/10/14 17:20:38 1.27
+++ /home/cvs/gsasl/tests/Makefile.am 2004/10/14 19:18:19 1.28
@@ -27,10 +27,15 @@
noinst_LTLIBRARIES = libutils.la
libutils_la_SOURCES = utils.h utils.c
-TESTS_ENVIRONMENT = THREADSAFETY_FILES=$(top_srcdir)/lib/*/*.c
+TESTS_ENVIRONMENT = SHISHI_KEYS=$(srcdir)/gssapi.key \
+ SHISHI_TICKETS=$(srcdir)/gssapi.tkt \
+ SHISHI_CONFIG=ignore-this-warning \
+ SHISHI_HOME=ignore-this-warning \
+ SHISHI_USER=ignore-this-warning \
+ THREADSAFETY_FILES=$(top_srcdir)/lib/*/*.c
ctests = simple cram-md5 digest-md5 md5file \
- old-cram-md5
+ old-cram-md5 old-gssapi
TESTS = threadsafety $(ctests)
check_PROGRAMS = $(ctests)
--- /home/cvs/gsasl/tests/digest-md5.c 2004/09/23 23:53:44 1.3
+++ /home/cvs/gsasl/tests/digest-md5.c 2004/10/14 19:18:19 1.4
@@ -140,7 +140,8 @@
res = gsasl_step (server, NULL, 0, &s1, &s1len);
if (res != GSASL_NEEDS_MORE)
{
- fail ("gsasl_step(1) failed (%d):\n%s\n", res, gsasl_strerror (res));
+ fail ("gsasl_step(1) failed (%d):\n%s\n", res,
+ gsasl_strerror (res));
return;
}
@@ -153,7 +154,8 @@
free (s1);
if (res != GSASL_NEEDS_MORE)
{
- fail ("gsasl_step(2) failed (%d):\n%s\n", res, gsasl_strerror (res));
+ fail ("gsasl_step(2) failed (%d):\n%s\n", res,
+ gsasl_strerror (res));
return;
}
@@ -166,7 +168,8 @@
free (s2);
if (res != GSASL_NEEDS_MORE)
{
- fail ("gsasl_step(3) failed (%d):\n%s\n", res, gsasl_strerror (res));
+ fail ("gsasl_step(3) failed (%d):\n%s\n", res,
+ gsasl_strerror (res));
return;
}
@@ -179,7 +182,8 @@
free (s1);
if (res != GSASL_OK)
{
- fail ("gsasl_step(4) failed (%d):\n%s\n", res, gsasl_strerror (res));
+ fail ("gsasl_step(4) failed (%d):\n%s\n", res,
+ gsasl_strerror (res));
return;
}
@@ -192,7 +196,8 @@
free (s2);
if (res != GSASL_OK)
{
- fail ("gsasl_step(5) failed (%d):\n%s\n", res, gsasl_strerror (res));
+ fail ("gsasl_step(5) failed (%d):\n%s\n", res,
+ gsasl_strerror (res));
return;
}
--- /home/cvs/gsasl/tests/md5file.c 2004/09/29 01:45:53 1.1
+++ /home/cvs/gsasl/tests/md5file.c 2004/10/14 19:18:19 1.2
@@ -55,7 +55,8 @@
success ("user-found OK\n");
else
fail ("user-found FAIL (%d): %s\n", res, gsasl_strerror (res));
- if (keylen != strlen (BILL_PASSWD) || memcmp (key, BILL_PASSWD, keylen) != 0)
+ if (keylen != strlen (BILL_PASSWD)
+ || memcmp (key, BILL_PASSWD, keylen) != 0)
fail ("user-password FAIL (%d): %.*s\n", keylen, keylen, key);
else
success ("user-password OK\n");
--- /home/cvs/gsasl/tests/gssapi.key 2004/10/14 19:18:19 NONE
+++ /home/cvs/gsasl/tests/gssapi.key 2004/10/14 19:18:19 1.1
-----BEGIN SHISHI KEY-----
Keytype: 3 (des-cbc-md5)
Principal: host/latte.josefsson.org
Realm: JOSEFSSON.ORG
s3WXrcITWPE=
-----END SHISHI KEY-----
--- /home/cvs/gsasl/tests/gssapi.tkt 2004/10/14 19:18:19 NONE
+++ /home/cvs/gsasl/tests/gssapi.tkt 2004/10/14 19:18:19 1.1
name:NULL type:SEQUENCE
name:pvno type:INTEGER value:0x05
name:msg-type type:INTEGER value:0x0b
name:crealm type:GENERALSTRING value:4a4f53454653534f4e2e4f5247
name:cname type:SEQUENCE
name:name-type type:INTEGER value:0x00
name:name-string type:SEQ_OF
name:NULL type:GENERALSTRING
name:?1 type:GENERALSTRING value:6a6173
name:ticket type:SEQUENCE
name:tkt-vno type:INTEGER value:0x05
name:realm type:GENERALSTRING value:4a4f53454653534f4e2e4f5247
name:sname type:SEQUENCE
name:name-type type:INTEGER value:0x01
name:name-string type:SEQ_OF
name:NULL type:GENERALSTRING
name:?1 type:GENERALSTRING value:6b7262746774
name:?2 type:GENERALSTRING value:4a4f53454653534f4e2e4f5247
name:enc-part type:SEQUENCE
name:etype type:INTEGER value:0x03
name:cipher type:OCT_STR
value:2cfc45fc973b8a8f8dc9dbdba1e5b7fc6d1c6d7929abb91ddac6c6dc5a96eafdbf38d24b2e4e8847215b2d47c771310b6f2ccf6ad4d2a961d37f466810c6f66941e776bdfeaa712a78b346de634efb3e524c36877bf9e393c615f052cf6dadd256304894b93a77d891a7fa738c636146c35fa379b7c4bc9fbde7224bd45d992ab9c5ac3c041419872beaec83c6fa1e95
name:enc-part type:SEQUENCE
name:etype type:INTEGER value:0x03
name:cipher type:OCT_STR
value:db294db40293d895918c50032d1666b0e0eb2408202a9282d68173af833a32a412ceb91a51f29aadc2913de2b01e779b1dd85528151653646b14c4be2b93a2fccc906011a024a975153acc9b6be255093d5ce7912c651bf4cb04b041e60f04d00b6364b4023b3284f436ef1eeaa7aae15d77ce643daff4e764433c1af43c4591d23e2945d0b27b9709e3c79629484c1e9aefba783570dff7848e6c1b3f861de74a89250fbd125ab2
-----BEGIN SHISHI KDC-REP-----
a4IBzjCCAcqgAwIBBaEDAgELow8bDUpPU0VGU1NPTi5PUkekEDAOoAMCAQChBzAF
GwNqYXOlgeFhgd4wgdugAwIBBaEPGw1KT1NFRlNTT04uT1JHoiIwIKADAgEBoRkw
FxsGa3JidGd0Gw1KT1NFRlNTT04uT1JHo4GeMIGboAMCAQOigZMEgZAs/EX8lzuK
j43J29uh5bf8bRxteSmruR3axsbcWpbq/b840ksuTohHIVstR8dxMQtvLM9q1NKp
YdN/RmgQxvZpQed2vf6qcSp4s0beY077PlJMNod7+eOTxhXwUs9trdJWMEiUuTp3
2JGn+nOMY2FGw1+jebfEvJ+95yJL1F2ZKrnFrDwEFBmHK+rsg8b6HpWmgbYwgbOg
AwIBA6KBqwSBqNspTbQCk9iVkYxQAy0WZrDg6yQIICqSgtaBc6+DOjKkEs65GlHy
mq3CkT3isB53mx3YVSgVFlNkaxTEviuTovzMkGARoCSpdRU6zJtr4lUJPVznkSxl
G/TLBLBB5g8E0AtjZLQCOzKE9DbvHuqnquFdd85kPa/052RDPBr0PEWR0j4pRdCy
e5cJ48eWKUhMHprvung1cN/3hI5sGz+GHedKiSUPvRJasg==
-----END SHISHI KDC-REP-----
name:NULL type:SEQUENCE
name:key type:SEQUENCE
name:keytype type:INTEGER value:0x03
name:keyvalue type:OCT_STR value:d63e808cfe7f643d
name:last-req type:SEQ_OF
name:NULL type:SEQUENCE
name:lr-type type:INTEGER
name:lr-value type:TIME
name:nonce type:INTEGER value:0x0c418523
name:flags type:BIT_STR value(32):00400000
name:authtime type:TIME value:20040711155558Z
name:endtime type:TIME value:20240711155558Z
name:srealm type:GENERALSTRING value:4a4f53454653534f4e2e4f5247
name:sname type:SEQUENCE
name:name-type type:INTEGER value:0x01
name:name-string type:SEQ_OF
name:NULL type:GENERALSTRING
name:?1 type:GENERALSTRING value:6b7262746774
name:?2 type:GENERALSTRING value:4a4f53454653534f4e2e4f5247
-----BEGIN SHISHI EncKDCRepPart-----
eYGIMIGFoBMwEaADAgEDoQoECNY+gIz+f2Q9oQIwAKIGAgQMQYUjpAcDBQAAQAAA
pREYDzIwMDQwNzExMTU1NTU4WqcRGA8yMDI0MDcxMTE1NTU1OFqpDxsNSk9TRUZT
U09OLk9SR6oiMCCgAwIBAaEZMBcbBmtyYnRndBsNSk9TRUZTU09OLk9SRw==
-----END SHISHI EncKDCRepPart-----
name:NULL type:SEQUENCE
name:tkt-vno type:INTEGER value:0x05
name:realm type:GENERALSTRING value:4a4f53454653534f4e2e4f5247
name:sname type:SEQUENCE
name:name-type type:INTEGER value:0x01
name:name-string type:SEQ_OF
name:NULL type:GENERALSTRING
name:?1 type:GENERALSTRING value:6b7262746774
name:?2 type:GENERALSTRING value:4a4f53454653534f4e2e4f5247
name:enc-part type:SEQUENCE
name:etype type:INTEGER value:0x03
name:cipher type:OCT_STR
value:2cfc45fc973b8a8f8dc9dbdba1e5b7fc6d1c6d7929abb91ddac6c6dc5a96eafdbf38d24b2e4e8847215b2d47c771310b6f2ccf6ad4d2a961d37f466810c6f66941e776bdfeaa712a78b346de634efb3e524c36877bf9e393c615f052cf6dadd256304894b93a77d891a7fa738c636146c35fa379b7c4bc9fbde7224bd45d992ab9c5ac3c041419872beaec83c6fa1e95
-----BEGIN SHISHI Ticket-----
YYHeMIHboAMCAQWhDxsNSk9TRUZTU09OLk9SR6IiMCCgAwIBAaEZMBcbBmtyYnRn
dBsNSk9TRUZTU09OLk9SR6OBnjCBm6ADAgEDooGTBIGQLPxF/Jc7io+NydvboeW3
/G0cbXkpq7kd2sbG3FqW6v2/ONJLLk6IRyFbLUfHcTELbyzPatTSqWHTf0ZoEMb2
aUHndr3+qnEqeLNG3mNO+z5STDaHe/njk8YV8FLPba3SVjBIlLk6d9iRp/pzjGNh
RsNfo3m3xLyfveciS9RdmSq5xaw8BBQZhyvq7IPG+h6V
-----END SHISHI Ticket-----
name:NULL type:SEQUENCE
name:pvno type:INTEGER value:0x05
name:msg-type type:INTEGER value:0x0d
name:crealm type:GENERALSTRING value:4a4f53454653534f4e2e4f5247
name:cname type:SEQUENCE
name:name-type type:INTEGER value:0x00
name:name-string type:SEQ_OF
name:NULL type:GENERALSTRING
name:?1 type:GENERALSTRING value:6a6173
name:ticket type:SEQUENCE
name:tkt-vno type:INTEGER value:0x05
name:realm type:GENERALSTRING value:4a4f53454653534f4e2e4f5247
name:sname type:SEQUENCE
name:name-type type:INTEGER value:0x01
name:name-string type:SEQ_OF
name:NULL type:GENERALSTRING
name:?1 type:GENERALSTRING value:686f7374
name:?2 type:GENERALSTRING
value:6c617474652e6a6f73656673736f6e2e6f7267
name:enc-part type:SEQUENCE
name:etype type:INTEGER value:0x03
name:cipher type:OCT_STR
value:80f8af4800aecb22c4852cc25cad377332375c7365f4eca15a99c1c13ff785be023e7d0315bd53d2937541aada9b672c62b1df632d33cb85de83e7e7efa2f0fa6551dcab98ac0a910fdb916ea816554fb9aed666133a58984be22d37da46d98252b883a0acee17d8c98c097428866a0906a1dc70c1909eb511618fdadf8c435c39ec154a564a1a2b7508051c663ca8a5
name:enc-part type:SEQUENCE
name:etype type:INTEGER value:0x03
name:cipher type:OCT_STR
value:87359dbbdd34da11cc17e22e1edb181f14be09749c81af24bb00c0ebe4ae9132449e710a4c455b28f48509ca01ef3ff883c7d9da57bca4e37959e45c1e3fca2355236c3edc87233d30577d5d79f5395d29133c44cac7e5af077d0f40c4e8ab1134c86dad8ebc7251e8178e3f8df4eb3ae00760889716ff4443a40d1ba5995d3a48bea574f41a019fc8467a944f3c700233a6fe42e42057b6e4419cd173e483c8cf3119c39e064cda
-----BEGIN SHISHI KDC-REP-----
bYIB0jCCAc6gAwIBBaEDAgENow8bDUpPU0VGU1NPTi5PUkekEDAOoAMCAQChBzAF
GwNqYXOlgeVhgeIwgd+gAwIBBaEPGw1KT1NFRlNTT04uT1JHoiYwJKADAgEBoR0w
GxsEaG9zdBsTbGF0dGUuam9zZWZzc29uLm9yZ6OBnjCBm6ADAgEDooGTBIGQgPiv
SACuyyLEhSzCXK03czI3XHNl9OyhWpnBwT/3hb4CPn0DFb1T0pN1Qaram2csYrHf
Yy0zy4Xeg+fn76Lw+mVR3KuYrAqRD9uRbqgWVU+5rtZmEzpYmEviLTfaRtmCUriD
oKzuF9jJjAl0KIZqCQah3HDBkJ61EWGP2t+MQ1w57BVKVkoaK3UIBRxmPKilpoG2
MIGzoAMCAQOigasEgaiHNZ273TTaEcwX4i4e2xgfFL4JdJyBryS7AMDr5K6RMkSe
cQpMRVso9IUJygHvP/iDx9naV7yk43lZ5FweP8ojVSNsPtyHIz0wV31defU5XSkT
PETKx+WvB30PQMToqxE0yG2tjrxyUegXjj+N9Os64AdgiJcW/0RDpA0bpZldOki+
pXT0GgGfyEZ6lE88cAIzpv5C5CBXtuRBnNFz5IPIzzEZw54GTNo=
-----END SHISHI KDC-REP-----
name:NULL type:SEQUENCE
name:key type:SEQUENCE
name:keytype type:INTEGER value:0x03
name:keyvalue type:OCT_STR value:37705d1c54a84683
name:last-req type:SEQ_OF
name:NULL type:SEQUENCE
name:lr-type type:INTEGER
name:lr-value type:TIME
name:nonce type:INTEGER value:0x22cc41a9
name:flags type:BIT_STR value(32):00000000
name:authtime type:TIME value:20040711155559Z
name:endtime type:TIME value:20240711155558Z
name:srealm type:GENERALSTRING value:4a4f53454653534f4e2e4f5247
name:sname type:SEQUENCE
name:name-type type:INTEGER value:0x01
name:name-string type:SEQ_OF
name:NULL type:GENERALSTRING
name:?1 type:GENERALSTRING value:686f7374
name:?2 type:GENERALSTRING value:6c617474652e6a6f73656673736f6e2e6f7267
-----BEGIN SHISHI EncKDCRepPart-----
eYGMMIGJoBMwEaADAgEDoQoECDdwXRxUqEaDoQIwAKIGAgQizEGppAcDBQAAAAAA
pREYDzIwMDQwNzExMTU1NTU5WqcRGA8yMDI0MDcxMTE1NTU1OFqpDxsNSk9TRUZT
U09OLk9SR6omMCSgAwIBAaEdMBsbBGhvc3QbE2xhdHRlLmpvc2Vmc3Nvbi5vcmc=
-----END SHISHI EncKDCRepPart-----
name:NULL type:SEQUENCE
name:tkt-vno type:INTEGER value:0x05
name:realm type:GENERALSTRING value:4a4f53454653534f4e2e4f5247
name:sname type:SEQUENCE
name:name-type type:INTEGER value:0x01
name:name-string type:SEQ_OF
name:NULL type:GENERALSTRING
name:?1 type:GENERALSTRING value:686f7374
name:?2 type:GENERALSTRING value:6c617474652e6a6f73656673736f6e2e6f7267
name:enc-part type:SEQUENCE
name:etype type:INTEGER value:0x03
name:cipher type:OCT_STR
value:80f8af4800aecb22c4852cc25cad377332375c7365f4eca15a99c1c13ff785be023e7d0315bd53d2937541aada9b672c62b1df632d33cb85de83e7e7efa2f0fa6551dcab98ac0a910fdb916ea816554fb9aed666133a58984be22d37da46d98252b883a0acee17d8c98c097428866a0906a1dc70c1909eb511618fdadf8c435c39ec154a564a1a2b7508051c663ca8a5
-----BEGIN SHISHI Ticket-----
YYHiMIHfoAMCAQWhDxsNSk9TRUZTU09OLk9SR6ImMCSgAwIBAaEdMBsbBGhvc3Qb
E2xhdHRlLmpvc2Vmc3Nvbi5vcmejgZ4wgZugAwIBA6KBkwSBkID4r0gArssixIUs
wlytN3MyN1xzZfTsoVqZwcE/94W+Aj59AxW9U9KTdUGq2ptnLGKx32MtM8uF3oPn
5++i8PplUdyrmKwKkQ/bkW6oFlVPua7WZhM6WJhL4i032kbZglK4g6Cs7hfYyYwJ
dCiGagkGodxwwZCetRFhj9rfjENcOewVSlZKGit1CAUcZjyopQ==
-----END SHISHI Ticket-----
--- /home/cvs/gsasl/tests/old-gssapi.c 2004/10/14 19:18:19 NONE
+++ /home/cvs/gsasl/tests/old-gssapi.c 2004/10/14 19:18:19 1.1
/* old-gssapi.c --- Test the GSSAPI mechanism, using old callback API.
* Copyright (C) 2002, 2003, 2004 Simon Josefsson
*
* This file is part of GNU SASL.
*
* GNU SASL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* GNU SASL is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with GNU SASL; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
*/
#ifdef HAVE_CONFIG_H
# include "config.h"
#endif
#include <stdio.h>
#include <stdarg.h>
#include <stdlib.h>
#include <string.h>
#include "utils.h"
#define SERVICE "host"
#define HOST "latte.josefsson.org"
#define PASSWORD "Open, Sesame"
#define USERNAME "Ali Baba"
/* "Ali " "\xC2\xAD" "Bab" "\xC2\xAA" */
/* "Al\xC2\xAA""dd\xC2\xAD""in\xC2\xAE" */
static int
server_cb_retrieve (Gsasl_session_ctx * xctx,
const char *authentication_id,
const char *authorization_id,
const char *realm, char *key, size_t * keylen)
{
size_t needlen = strlen (PASSWORD);
if (key && *keylen < needlen)
return GSASL_TOO_SMALL_BUFFER;
*keylen = needlen;
if (key)
memcpy (key, PASSWORD, *keylen);
return GSASL_OK;
}
static int
server_cb_service (Gsasl_session_ctx * ctx,
char *srv, size_t * srvlen, char *host, size_t * hostlen)
{
size_t srvneedlen = strlen (SERVICE);
size_t hostneedlen = strlen (HOST);
if (srv && *srvlen < srvneedlen)
return GSASL_TOO_SMALL_BUFFER;
if (host && *hostlen < hostneedlen)
return GSASL_TOO_SMALL_BUFFER;
*srvlen = srvneedlen;
if (srv)
memcpy (srv, SERVICE, *srvlen);
*hostlen = hostneedlen;
if (host)
memcpy (host, HOST, *hostlen);
return GSASL_OK;
}
static int
server_cb_gssapi (Gsasl_session_ctx * ctx,
const char *client_name, const char *authentication_id)
{
char *data;
if (client_name)
printf ("GSSAPI user: %s\n", client_name);
if (authentication_id)
printf ("Authentication ID: %s\n", authentication_id);
data = readline ("Admit user? (y/n) ");
if (*data == 'y' || *data == 'Y')
return GSASL_OK;
else
return GSASL_AUTHENTICATION_ERROR;
}
static int
client_cb_authentication_id (Gsasl_session_ctx * xctx,
char *out, size_t * outlen)
{
size_t needlen = strlen (USERNAME);
if (out && *outlen < needlen)
return GSASL_TOO_SMALL_BUFFER;
*outlen = needlen;
if (out)
memcpy (out, USERNAME, *outlen);
return GSASL_OK;
}
static int
client_cb_password (Gsasl_session_ctx * xctx, char *out, size_t * outlen)
{
size_t needlen = strlen (PASSWORD);
if (out && *outlen < needlen)
return GSASL_TOO_SMALL_BUFFER;
*outlen = needlen;
if (out)
memcpy (out, PASSWORD, *outlen);
return GSASL_OK;
}
static int
client_cb_service (Gsasl_session_ctx * ctx,
char *srv, size_t * srvlen,
char *host, size_t * hostlen,
char *srvname, size_t * srvnamelen)
{
size_t srvneedlen = strlen (SERVICE);
size_t hostneedlen = strlen (HOST);
if (srv && srvlen && *srvlen < srvneedlen)
return GSASL_TOO_SMALL_BUFFER;
if (host && hostlen && *hostlen < hostneedlen)
return GSASL_TOO_SMALL_BUFFER;
if (srvlen)
{
*srvlen = srvneedlen;
if (srv)
memcpy (srv, SERVICE, *srvlen);
}
if (hostlen)
{
*hostlen = hostneedlen;
if (host)
memcpy (host, HOST, hostneedlen);
}
if (srvnamelen)
*srvnamelen = 0;
return GSASL_OK;
}
void
doit (void)
{
Gsasl_ctx *ctx = NULL;
Gsasl_session_ctx *server = NULL, *client = NULL;
char *s1 = NULL, *s2 = NULL;
size_t i;
int res;
res = gsasl_init (&ctx);
if (res != GSASL_OK)
{
fail ("gsasl_init() failed (%d):\n%s\n", res, gsasl_strerror (res));
return;
}
gsasl_server_callback_retrieve_set (ctx, server_cb_retrieve);
gsasl_server_callback_service_set (ctx, server_cb_service);
gsasl_server_callback_gssapi_set (ctx, server_cb_gssapi);
gsasl_client_callback_authentication_id_set (ctx,
client_cb_authentication_id);
gsasl_client_callback_password_set (ctx, client_cb_password);
gsasl_client_callback_service_set (ctx, client_cb_service);
for (i = 0; i < 5; i++)
{
res = gsasl_server_start (ctx, "GSSAPI", &server);
if (res != GSASL_OK)
{
fail ("gsasl_init() failed (%d):\n%s\n", res, gsasl_strerror (res));
return;
}
res = gsasl_client_start (ctx, "GSSAPI", &client);
if (res != GSASL_OK)
{
fail ("gsasl_init() failed (%d):\n%s\n", res, gsasl_strerror (res));
return;
}
do
{
res = gsasl_step64 (server, s1, &s2);
if (s1)
free (s1);
if (res != GSASL_OK && res != GSASL_NEEDS_MORE)
{
fail ("gsasl_step64 (1) failed (%d):\n%s\n", res,
gsasl_strerror (res));
return;
[36 lines skipped]
- CVS gsasl/tests, gsasl-commit, 2004/10/13
- CVS gsasl/tests, gsasl-commit, 2004/10/13
- CVS gsasl/tests, gsasl-commit, 2004/10/13
- CVS gsasl/tests, gsasl-commit, 2004/10/14
- CVS gsasl/tests, gsasl-commit, 2004/10/14
- CVS gsasl/tests,
gsasl-commit <=
- CVS gsasl/tests, gsasl-commit, 2004/10/14
- CVS gsasl/tests, gsasl-commit, 2004/10/14
- CVS gsasl/tests, gsasl-commit, 2004/10/14
- CVS gsasl/tests, gsasl-commit, 2004/10/14
- CVS gsasl/tests, gsasl-commit, 2004/10/14
- CVS gsasl/tests, gsasl-commit, 2004/10/14
- CVS gsasl/tests, gsasl-commit, 2004/10/14
- CVS gsasl/tests, gsasl-commit, 2004/10/14
- CVS gsasl/tests, gsasl-commit, 2004/10/31