[11587] in Athena Bugs

home help back first fref pref prev next nref lref last post

afs-xnfs bug (assumption on sign extension)

daemon@ATHENA.MIT.EDU (epeisach@MIT.EDU)
Thu Jan 6 12:57:11 1994

From: epeisach@MIT.EDU
Date: Thu, 6 Jan 1994 12:57:02 -0500
To: bugs@MIT.EDU
Cc: probe@MIT.EDU


On the Alpha, aklog had a problem with resolving paths properly. It
turned out that the code had problems comparing a bit32 (which is a
u_char [4]) and a constant. Both with sign extended and you can imagine
the garbage the came out.

This was in clients/aklog.c - an obvious fix - use errno and not
error_no for the comparison.

The other problems:

qrpc/krb.c: Some functions were not defined....(kerberos headers suck)

clients/axn_client.c: The debug variable should be initialized. Didn't
hit me, but should be set.

===================================================================
RCS file: clients/RCS/aklog.c,v
retrieving revision 1.1
diff -c -r1.1 clients/aklog.c
*** 1.1	1994/01/06 16:47:21
--- clients/aklog.c	1994/01/06 17:52:23
***************
*** 331,337 ****
      bcopy(error_no, p, sizeof(error_no));
      p += sizeof(int);
      
!     if (error_no == 0) {
  	if ((statbuf.st_mode & S_IFMT) == S_IFDIR)
  	    *p = TRUE;
  	else
--- 331,337 ----
      bcopy(error_no, p, sizeof(error_no));
      p += sizeof(int);
      
!     if (errno == 0) {
  	if ((statbuf.st_mode & S_IFMT) == S_IFDIR)
  	    *p = TRUE;
  	else
===================================================================
RCS file: clients/RCS/axn_client.c,v
retrieving revision 1.1
diff -c -r1.1 clients/axn_client.c
*** 1.1	1994/01/06 16:47:31
--- clients/axn_client.c	1994/01/06 17:51:51
***************
*** 21,27 ****
  void aklog AXN_PROTO((axn_t));
  void simple_client AXN_PROTO((axn_t));
  
! int axn_client_debug;
  
  #ifdef __STDC__
  main(int argc, char *argv[])
--- 21,27 ----
  void aklog AXN_PROTO((axn_t));
  void simple_client AXN_PROTO((axn_t));
  
! int axn_client_debug=0;
  
  #ifdef __STDC__
  main(int argc, char *argv[])
===================================================================
RCS file: qrpc/RCS/krb.c,v
retrieving revision 1.11
diff -c -r1.11 qrpc/krb.c
*** 1.11	1993/04/30 17:53:53
--- qrpc/krb.c	1993/11/22 02:49:49
***************
*** 20,25 ****
--- 20,27 ----
  #include <krb.h>
  #include <des.h>
  
+ extern char *krb_get_phost(), *krb_realmofhost();
+ 
  #include "qrpc.h"
  #include "qrpc_private.h"
  


home help back first fref pref prev next nref lref last post