[OpenAFS-devel] "unable to authenticate to AFS" error- linux
distribution, specific?
Christof Hanke
hanke@rzg.mpg.de
Thu, 25 Nov 2004 15:50:19 +0100
Hi,
Following your advice, here's a temporary patch for using fixed args and
making use of a proper
prototype so that compiling with a wrong parameter list fails.
I'm not sure if "varargs" is such a good idea, since it's already
superseded by "stdargs", but
I don't know if that's supported by all platforms.
Just to clarify some confusion I've read on the (info) list :
My previous snippet was not meant as patch and it was clear to me it's
just masking the symptom.
Christof
--- openafs-1.3.74/src/ubik/ubik.p.h 2004-11-09 18:09:41.000000000 +0100
+++ openafs-1.3.74-new/src/ubik/ubik.p.h 2004-11-25
11:55:24.572814026 +0100
@@ -354,6 +354,8 @@
extern afs_int32 ubik_ClientDestroy(struct ubik_client *aclient);
+extern afs_int32 ubik_CallIter(int (*aproc) (),struct ubik_client
*aclient,afs_int32 aflags,int *apos,long p1,long p2,long p3,long p4,long
p5,long p6,long p7,long p8,long p9,long p10,long p11,long p12,long
p13,long p14,long p15,long p16);
+
/* ubik.c */
extern int ubik_BeginTrans(register struct ubik_dbase *dbase,
afs_int32 transMode, struct ubik_trans
**transPtr);
--- openafs-1.3.74/src/ubik/ubikclient.c 2004-08-25
09:09:43.000000000 +0200
+++ openafs-1.3.74-new/src/ubik/ubikclient.c 2004-11-25
10:55:34.631683987 +0100
@@ -46,7 +46,7 @@
#endif /* defined(UKERNEL) */
-afs_int32 ubik_CallIter();
+
short ubik_initializationState; /* initial state is zero */
--- openafs-1.3.74/src/kauth/admin_tools.c 2004-08-25
09:03:39.000000000 +0200
+++ openafs-1.3.74-new/src/kauth/admin_tools.c 2004-11-25
15:32:49.729347344 +0100
@@ -514,7 +514,7 @@
code =
ubik_CallIter(KAM_LockStatus, conn, UPUBIKONLY, &count, name,
instance, &tempwhen, /*spares */ 0, 0, 0,
- 0);
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
if (code) {
if (seriouserror(code))
com_err(whoami, code, "");
@@ -550,7 +550,8 @@
count = 0;
do {
code = ubik_CallIter(KAM_Unlock, conn, 0, &count, name, instance,
- /*spares */ 0, 0, 0, 0);
+ /*spares */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0);
if (code && (code != UNOSERVERS)) {
server = 0;
if (conn && conn->conns[count - 1]
--- openafs-1.3.74/src/kauth/authclient.c 2004-08-25
09:09:38.000000000 +0200
+++ openafs-1.3.74-new/src/kauth/authclient.c 2004-11-25
15:33:36.020205995 +0100
@@ -476,7 +476,8 @@
lcode = code;
code =
ubik_CallIter(aproc, aclient, aflags, &count, p1, p2,
p3, p4,
- p5, p6, p7, p8);
+ p5, p6, p7, p8 /*spares */, 0, 0, 0, 0, 0, 0,
+ 0, 0);
} while ((code == UNOQUORUM) || (code == UNOTSYNC)
|| (code == KALOCKED) || (code == -1));
--- openafs-1.3.74/src/libadmin/kas/afs_kasAdmin.c 2003-12-07
23:49:30.000000000 +0100
+++ openafs-1.3.74-new/src/libadmin/kas/afs_kasAdmin.c 2004-11-25
15:34:39.839360503 +0100
@@ -718,7 +718,7 @@
tst =
ubik_CallIter(KAM_LockStatus, kaserver->servers, UPUBIKONLY,
&count, who->principal, who->instance, &locked, 0,
- 0, 0, 0);
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
if (tst == 0) {
if (locked) {
if ((locked < *lockedUntil) || !once) {
@@ -1274,7 +1274,8 @@
do {
tst =
ubik_CallIter(KAM_Unlock, kaserver.servers, 0, &count,
- who->principal, who->instance, 0, 0, 0, 0);
+ who->principal, who->instance, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
if (tst && (tst != UNOSERVERS)) {
if (save_tst == 0) {
save_tst = tst; /* save the first failure */