Author: pfg
Date: Tue Oct  2 19:00:56 2012
New Revision: 241141
URL: http://svn.freebsd.org/changeset/base/241141

Log:
  RPC: Convert all uid and gid variables of the type uid_t and gid_t.
  
  This matches what upstream (OpenSolaris) does.
  
  Tested by:    David Wolfskill
  Obtained from:        Bull GNU/Linux NFSv4 project (libtirpc)
  MFC after:    3 days

Modified:
  head/include/rpc/auth.h
  head/include/rpc/auth_unix.h
  head/lib/libc/rpc/auth_unix.c
  head/lib/libc/rpc/authunix_prot.c
  head/lib/libc/rpc/rpc_soc.3
  head/lib/libc/rpc/svc_auth_unix.c
  head/sys/rpc/auth.h

Modified: head/include/rpc/auth.h
==============================================================================
--- head/include/rpc/auth.h     Tue Oct  2 18:38:05 2012        (r241140)
+++ head/include/rpc/auth.h     Tue Oct  2 19:00:56 2012        (r241141)
@@ -243,14 +243,13 @@ __END_DECLS
  * System style authentication
  * AUTH *authunix_create(machname, uid, gid, len, aup_gids)
  *     char *machname;
- *     int uid;
- *     int gid;
+ *     uid_t uid;
+ *     gid_t gid;
  *     int len;
- *     int *aup_gids;
+ *     gid_t *aup_gids;
  */
 __BEGIN_DECLS
-extern AUTH *authunix_create(char *, int, int, int,
-    int *);
+extern AUTH *authunix_create(char *, uid_t, gid_t, int, gid_t *);
 extern AUTH *authunix_create_default(void);    /* takes no parameters */
 extern AUTH *authnone_create(void);            /* takes no parameters */
 __END_DECLS

Modified: head/include/rpc/auth_unix.h
==============================================================================
--- head/include/rpc/auth_unix.h        Tue Oct  2 18:38:05 2012        
(r241140)
+++ head/include/rpc/auth_unix.h        Tue Oct  2 19:00:56 2012        
(r241141)
@@ -60,10 +60,10 @@
 struct authunix_parms {
        u_long   aup_time;
        char    *aup_machname;
-       int      aup_uid;
-       int      aup_gid;
+       uid_t    aup_uid;
+       gid_t    aup_gid;
        u_int    aup_len;
-       int     *aup_gids;
+       gid_t   *aup_gids;
 };
 
 #define authsys_parms authunix_parms

Modified: head/lib/libc/rpc/auth_unix.c
==============================================================================
--- head/lib/libc/rpc/auth_unix.c       Tue Oct  2 18:38:05 2012        
(r241140)
+++ head/lib/libc/rpc/auth_unix.c       Tue Oct  2 19:00:56 2012        
(r241141)
@@ -94,10 +94,10 @@ struct audata {
 AUTH *
 authunix_create(machname, uid, gid, len, aup_gids)
        char *machname;
-       int uid;
-       int gid;
+       uid_t uid;
+       gid_t gid;
        int len;
-       int *aup_gids;
+       gid_t *aup_gids;
 {
        struct authunix_parms aup;
        char mymem[MAX_AUTH_BYTES];
@@ -207,9 +207,7 @@ authunix_create_default()
                abort();
        if (ngids > NGRPS)
                ngids = NGRPS;
-       /* XXX: interface problem; those should all have been unsigned */
-       auth = authunix_create(machname, (int)uid, (int)gid, ngids,
-           (int *)gids);
+       auth = authunix_create(machname, uid, gid, ngids, gids);
        free(gids);
        return (auth);
 }

Modified: head/lib/libc/rpc/authunix_prot.c
==============================================================================
--- head/lib/libc/rpc/authunix_prot.c   Tue Oct  2 18:38:05 2012        
(r241140)
+++ head/lib/libc/rpc/authunix_prot.c   Tue Oct  2 19:00:56 2012        
(r241141)
@@ -60,7 +60,7 @@ xdr_authunix_parms(xdrs, p)
        XDR *xdrs;
        struct authunix_parms *p;
 {
-       int **paup_gids;
+       gid_t **paup_gids;
 
        assert(xdrs != NULL);
        assert(p != NULL);
@@ -69,8 +69,8 @@ xdr_authunix_parms(xdrs, p)
 
        if (xdr_u_long(xdrs, &(p->aup_time))
            && xdr_string(xdrs, &(p->aup_machname), MAX_MACHINE_NAME)
-           && xdr_int(xdrs, &(p->aup_uid))
-           && xdr_int(xdrs, &(p->aup_gid))
+           && xdr_u_int(xdrs, &(p->aup_uid))
+           && xdr_u_int(xdrs, &(p->aup_gid))
            && xdr_array(xdrs, (char **) paup_gids,
                    &(p->aup_len), NGRPS, sizeof(int), (xdrproc_t)xdr_int) ) {
                return (TRUE);

Modified: head/lib/libc/rpc/rpc_soc.3
==============================================================================
--- head/lib/libc/rpc/rpc_soc.3 Tue Oct  2 18:38:05 2012        (r241140)
+++ head/lib/libc/rpc/rpc_soc.3 Tue Oct  2 19:00:56 2012        (r241141)
@@ -148,7 +148,7 @@ default authentication used by
 .Ft "AUTH *"
 .Xc
 .It Xo
-.Fn authunix_create "char *host" "int uid" "int gid" "int len" "int *aup_gids"
+.Fn authunix_create "char *host" "uid_t uid" "gid_t gid" "int len" "gid_t 
*aup_gids"
 .Xc
 .Pp
 Create and return an

Modified: head/lib/libc/rpc/svc_auth_unix.c
==============================================================================
--- head/lib/libc/rpc/svc_auth_unix.c   Tue Oct  2 18:38:05 2012        
(r241140)
+++ head/lib/libc/rpc/svc_auth_unix.c   Tue Oct  2 19:00:56 2012        
(r241141)
@@ -68,7 +68,7 @@ _svcauth_unix(rqst, msg)
        struct area {
                struct authunix_parms area_aup;
                char area_machname[MAX_MACHINE_NAME+1];
-               int area_gids[NGRPS];
+               gid_t area_gids[NGRPS];
        } *area;
        u_int auth_len;
        size_t str_len, gid_len;

Modified: head/sys/rpc/auth.h
==============================================================================
--- head/sys/rpc/auth.h Tue Oct  2 18:38:05 2012        (r241140)
+++ head/sys/rpc/auth.h Tue Oct  2 19:00:56 2012        (r241141)
@@ -234,18 +234,17 @@ __END_DECLS
  * System style authentication
  * AUTH *authunix_create(machname, uid, gid, len, aup_gids)
  *     char *machname;
- *     int uid;
- *     int gid;
+ *     uid_t uid;
+ *     gid_t gid;
  *     int len;
- *     int *aup_gids;
+ *     gid_t *aup_gids;
  */
 __BEGIN_DECLS
 #ifdef _KERNEL
 struct ucred;
 extern AUTH *authunix_create(struct ucred *);
 #else
-extern AUTH *authunix_create(char *, int, int, int,
-    int *);
+extern AUTH *authunix_create(char *, uid_t, gid_t, int, gid_t *);
 extern AUTH *authunix_create_default(void);    /* takes no parameters */
 #endif
 extern AUTH *authnone_create(void);            /* takes no parameters */
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to