auth fixes
diff --git a/include/auth.h b/include/auth.h
index f0ecdea..81b08cc 100644
--- a/include/auth.h
+++ b/include/auth.h
@@ -8,6 +8,7 @@
 #pragma	src	"/sys/src/libauth"
 #pragma	lib	"libauth.a"
 */
+AUTOLIB(auth)
 
 /*
  * Interface for typical callers.
@@ -20,6 +21,8 @@
 typedef struct	UserPasswd	UserPasswd;
 typedef struct	AuthRpc		AuthRpc;
 
+struct CFid;
+
 enum
 {
 	MAXCHLEN=	256,		/* max challenge length	*/
@@ -43,6 +46,7 @@
 struct AuthRpc
 {
 	int afd;
+	struct CFid *afid;
 	char ibuf[AuthRpcMax];
 	char obuf[AuthRpcMax];
 	char *arg;
@@ -67,7 +71,6 @@
 	int	nresp;
 
 /* for implementation only */
-	int	afd;			/* to factotum */
 	AuthRpc	*rpc;			/* to factotum */
 	char	userbuf[MAXNAMELEN];	/* temp space if needed */
 	int	userinchal;		/* user was sent to obtain challenge */
@@ -131,6 +134,8 @@
 
 extern AuthInfo*	fauth_proxy(int, AuthRpc *rpc, AuthGetkey *getkey, char *params);
 extern AuthInfo*	auth_proxy(int fd, AuthGetkey *getkey, char *fmt, ...);
+extern AuthInfo*	fsfauth_proxy(struct CFid*, AuthRpc *rpc, AuthGetkey *getkey, char *params);
+extern AuthInfo*	fsauth_proxy(struct CFid*, AuthGetkey *getkey, char *fmt, ...);
 extern int		auth_getkey(char*);
 extern int		(*amount_getkey)(char*);
 extern void		auth_freeAI(AuthInfo *ai);
@@ -142,7 +147,7 @@
 extern AuthInfo*	auth_userpasswd(char *user, char *passwd);
 extern UserPasswd*	auth_getuserpasswd(AuthGetkey *getkey, char*, ...);
 extern AuthInfo*	auth_getinfo(AuthRpc *rpc);
-extern AuthRpc*		auth_allocrpc(int afd);
+extern AuthRpc*		auth_allocrpc(void);
 extern Attr*		auth_attr(AuthRpc *rpc);
 extern void		auth_freerpc(AuthRpc *rpc);
 extern uint		auth_rpc(AuthRpc *rpc, char *verb, void *a, int n);
diff --git a/include/authsrv.h b/include/authsrv.h
index 1149a21..5f2fc04 100644
--- a/include/authsrv.h
+++ b/include/authsrv.h
@@ -7,6 +7,7 @@
 #pragma	src	"/sys/src/libauthsrv"
 #pragma	lib	"libauthsrv.a"
 */
+AUTOLIB(authsrv)
 
 /*
  * Interface for talking to authentication server.