krb5 commit: Eliminate use of the 'register' keyword

Greg Hudson ghudson at mit.edu
Mon Jun 18 14:15:45 EDT 2018


https://github.com/krb5/krb5/commit/beeb2828945a41d86488e391ce440bacee0ec8a4
commit beeb2828945a41d86488e391ce440bacee0ec8a4
Author: Thomas Sondergaard <tsondergaard at vitalimages.com>
Date:   Sat Jun 16 18:14:50 2018 +0200

    Eliminate use of the 'register' keyword
    
    'register' is a reserved and unused keyword in C++17 so having it
    present in the public headers presents a a compatibility issue. Also
    in C the 'register' keyword is mostly obsolete, so remove all uses of
    it.
    
    [ghudson at mit.edu: adjusted style of some of the affected lines]

 src/appl/user_user/client.c                        |    2 +-
 src/clients/ksu/main.c                             |    2 +-
 src/clients/ksu/setenv.c                           |   16 +++---
 src/include/gssrpc/clnt.h                          |    2 +-
 src/include/krb5/krb5.hin                          |   16 +++---
 src/kadmin/cli/getdate.y                           |   10 ++--
 src/kadmin/dbutil/strtok.c                         |    8 ++--
 src/kadmin/server/ipropd_svc.c                     |    2 +-
 src/kadmin/server/kadm_rpc_svc.c                   |    2 +-
 src/kdc/kdc_util.c                                 |    6 +-
 src/kdc/tgs_policy.c                               |    2 +-
 src/lib/apputils/net-server.c                      |    2 +-
 src/lib/crypto/builtin/des/destest.c               |    8 ++--
 src/lib/crypto/builtin/des/doc/libdes.doc          |    4 +-
 src/lib/crypto/builtin/des/f_cksum.c               |    2 +-
 src/lib/crypto/builtin/des/f_sched.c               |   12 ++--
 src/lib/crypto/builtin/des/f_tables.h              |   10 ++--
 src/lib/crypto/builtin/des/t_verify.c              |    2 +-
 src/lib/crypto/builtin/md4/md4.c                   |    2 +-
 src/lib/crypto/builtin/md5/md5.c                   |    2 +-
 src/lib/crypto/krb/crc32.c                         |    6 +-
 src/lib/crypto/krb/keyblocks.c                     |    2 +-
 src/lib/kdb/iprop_xdr.c                            |   40 ++++++++--------
 src/lib/krb5/ccache/cc_mslsa.c                     |    6 +-
 src/lib/krb5/ccache/ccapi/stdcc_util.c             |   12 ++--
 src/lib/krb5/keytab/kt_file.c                      |    2 +-
 src/lib/krb5/krb/addr_order.c                      |    2 +-
 src/lib/krb5/krb/authdata.c                        |    2 +-
 src/lib/krb5/krb/conv_princ.c                      |    4 +-
 src/lib/krb5/krb/copy_addrs.c                      |    2 +-
 src/lib/krb5/krb/copy_auth.c                       |    2 +-
 src/lib/krb5/krb/copy_princ.c                      |    2 +-
 src/lib/krb5/krb/decrypt_tk.c                      |    3 +-
 src/lib/krb5/krb/encrypt_tk.c                      |    5 +-
 src/lib/krb5/krb/kfree.c                           |   40 ++++++++--------
 src/lib/krb5/krb/pr_to_salt.c                      |   11 ++--
 src/lib/krb5/krb/unparse.c                         |    3 +-
 src/lib/krb5/krb/walk_rtree.c                      |    2 +-
 src/lib/krb5/os/full_ipadr.c                       |    4 +-
 src/lib/krb5/os/mk_faddr.c                         |    2 +-
 src/lib/krb5/os/net_read.c                         |    2 +-
 src/lib/krb5/os/port2ip.c                          |    2 +-
 src/lib/krb5/os/timeofday.c                        |    2 +-
 src/lib/rpc/auth_none.c                            |    6 +-
 src/lib/rpc/auth_unix.c                            |   34 +++++++-------
 src/lib/rpc/authunix_prot.c                        |    2 +-
 src/lib/rpc/clnt_raw.c                             |    8 ++--
 src/lib/rpc/clnt_simple.c                          |    2 +-
 src/lib/rpc/clnt_tcp.c                             |   30 +++++------
 src/lib/rpc/clnt_udp.c                             |   28 +++++-----
 src/lib/rpc/getrpcent.c                            |   18 ++++----
 src/lib/rpc/pmap_clnt.c                            |    4 +-
 src/lib/rpc/pmap_getmaps.c                         |    2 +-
 src/lib/rpc/pmap_getport.c                         |    2 +-
 src/lib/rpc/pmap_prot2.c                           |    6 +-
 src/lib/rpc/pmap_rmt.c                             |   18 ++++----
 src/lib/rpc/rpc_callmsg.c                          |    6 +-
 src/lib/rpc/svc.c                                  |   28 +++++-----
 src/lib/rpc/svc_auth.c                             |    8 ++--
 src/lib/rpc/svc_auth_gssapi.c                      |    4 +-
 src/lib/rpc/svc_auth_unix.c                        |   10 ++--
 src/lib/rpc/svc_raw.c                              |   16 +++---
 src/lib/rpc/svc_tcp.c                              |   50 +++++++++----------
 src/lib/rpc/svc_udp.c                              |   42 ++++++++--------
 src/lib/rpc/unit-test/rpc_test_svc.c               |    2 +-
 src/lib/rpc/unit-test/server.c                     |    2 +-
 src/lib/rpc/xdr.c                                  |   16 +++---
 src/lib/rpc/xdr_alloc.c                            |   16 +++---
 src/lib/rpc/xdr_array.c                            |   26 +++++-----
 src/lib/rpc/xdr_float.c                            |    4 +-
 src/lib/rpc/xdr_mem.c                              |    4 +-
 src/lib/rpc/xdr_rec.c                              |   51 ++++++++++----------
 src/lib/rpc/xdr_reference.c                        |    4 +-
 src/plugins/kdb/db2/libdb2/btree/bt_utils.c        |    8 ++--
 src/plugins/kdb/db2/libdb2/recno/rec_search.c      |    4 +-
 src/plugins/kdb/db2/libdb2/test/btree.tests/main.c |    2 +-
 src/plugins/kdb/db2/libdb2/test/dbtest.c           |    4 +-
 src/util/profile/profile_tcl.c                     |   24 +++++-----
 src/util/ss/cmd_tbl.lex.l                          |    2 +-
 src/util/ss/error.c                                |    4 +-
 src/util/ss/execute_cmd.c                          |   16 +++---
 src/util/ss/help.c                                 |   12 ++--
 src/util/ss/invocation.c                           |    8 ++--
 src/util/ss/list_rqs.c                             |   10 ++--
 src/util/ss/listen.c                               |    8 ++--
 src/util/ss/options.c                              |    4 +-
 src/util/ss/pager.c                                |    2 +-
 src/util/ss/parse.c                                |    8 ++--
 src/util/ss/request_tbl.c                          |    8 ++--
 src/util/ss/requests.c                             |    2 +-
 src/util/ss/utils.c                                |   12 ++--
 src/util/support/mkstemp.c                         |    4 +-
 src/windows/leashdll/timesync.c                    |    4 +-
 93 files changed, 430 insertions(+), 435 deletions(-)

diff --git a/src/appl/user_user/client.c b/src/appl/user_user/client.c
index 28901a6..34d8522 100644
--- a/src/appl/user_user/client.c
+++ b/src/appl/user_user/client.c
@@ -36,7 +36,7 @@
 int main (int argc, char *argv[])
 {
     int s;
-    register int retval, i;
+    int retval, i;
     char *hname;          /* full name of server */
     char **srealms;       /* realm(s) of server */
     char *princ;          /* principal in credentials cache */
diff --git a/src/clients/ksu/main.c b/src/clients/ksu/main.c
index 6fa74a5..d9596d9 100644
--- a/src/clients/ksu/main.c
+++ b/src/clients/ksu/main.c
@@ -932,7 +932,7 @@ cleanup:
 int standard_shell(sh)
     char *sh;
 {
-    register char *cp;
+    char *cp;
     char *getusershell();
 
     while ((cp = getusershell()) != NULL)
diff --git a/src/clients/ksu/setenv.c b/src/clients/ksu/setenv.c
index a7895c6..c7bd369 100644
--- a/src/clients/ksu/setenv.c
+++ b/src/clients/ksu/setenv.c
@@ -57,12 +57,12 @@ extern void unsetenv(char *);
 #ifndef HAVE_SETENV
 int
 setenv(name, value, rewrite)
-    register char *name, *value;
+    char *name, *value;
     int rewrite;
 {
     extern char **environ;
     static int alloced;                     /* if allocated space before */
-    register char *C;
+    char *C;
     int l_value, offset;
 
     if (*value == '=')                      /* no `=' in value */
@@ -77,8 +77,8 @@ setenv(name, value, rewrite)
         }
     }
     else {                                  /* create new slot */
-        register int    cnt;
-        register char   **P;
+        int    cnt;
+        char   **P;
 
         for (P = environ, cnt = 0; *P; ++P, ++cnt);
         if (alloced) {                  /* just increase size */
@@ -119,7 +119,7 @@ unsetenv(name)
     char    *name;
 {
     extern  char    **environ;
-    register char   **P;
+    char   **P;
     int     offset;
 
     while (_findenv(name, &offset))         /* if set multiple times */
@@ -156,12 +156,12 @@ getenv(name)
  */
 static char *
 _findenv(name, offset)
-    register char *name;
+    char *name;
     int *offset;
 {
     extern char **environ;
-    register int len;
-    register char **P, *C;
+    int len;
+    char **P, *C;
 
     for (C = name, len = 0; *C && *C != '='; ++C, ++len);
     for (P = environ; *P; ++P)
diff --git a/src/include/gssrpc/clnt.h b/src/include/gssrpc/clnt.h
index 40f7c69..fc6836c 100644
--- a/src/include/gssrpc/clnt.h
+++ b/src/include/gssrpc/clnt.h
@@ -270,7 +270,7 @@ extern CLIENT *clnt_create(char *, rpcprog_t, rpcvers_t, char *);
  *	struct sockaddr_in *raddr;
  *	rpcprog_t prog;
  *	rpcvers_t version;
- *	register int *sockp;
+ *	int *sockp;
  *	u_int sendsz;
  *	u_int recvsz;
  */
diff --git a/src/include/krb5/krb5.hin b/src/include/krb5/krb5.hin
index 6d99de4..384bb83 100644
--- a/src/include/krb5/krb5.hin
+++ b/src/include/krb5/krb5.hin
@@ -3566,7 +3566,7 @@ krb5_parse_name_flags(krb5_context context, const char *name,
  */
 krb5_error_code KRB5_CALLCONV
 krb5_unparse_name(krb5_context context, krb5_const_principal principal,
-                  register char **name);
+                  char **name);
 
 /**
  * Convert krb5_principal structure to string and length.
@@ -4389,7 +4389,7 @@ krb5_kt_add_entry(krb5_context context, krb5_keytab id, krb5_keytab_entry *entry
  */
 krb5_error_code KRB5_CALLCONV_WRONG
 krb5_principal2salt(krb5_context context,
-                    register krb5_const_principal pr, krb5_data *ret);
+                    krb5_const_principal pr, krb5_data *ret);
 /* librc.spec--see rcache.h */
 
 /* libcc.spec */
@@ -4730,7 +4730,7 @@ krb5_free_ticket(krb5_context context, krb5_ticket *val);
  * This function frees the contents of @a val and the structure itself.
  */
 void KRB5_CALLCONV
-krb5_free_error(krb5_context context, register krb5_error *val);
+krb5_free_error(krb5_context context, krb5_error *val);
 
 /**
  * Free a krb5_creds structure.
@@ -4763,7 +4763,7 @@ krb5_free_cred_contents(krb5_context context, krb5_creds *val);
  * This function frees the contents of @a val and the structure itself.
  */
 void KRB5_CALLCONV
-krb5_free_checksum(krb5_context context, register krb5_checksum *val);
+krb5_free_checksum(krb5_context context, krb5_checksum *val);
 
 /**
  * Free the contents of a krb5_checksum structure.
@@ -4774,7 +4774,7 @@ krb5_free_checksum(krb5_context context, register krb5_checksum *val);
  * This function frees the contents of @a val, but not the structure itself.
  */
 void KRB5_CALLCONV
-krb5_free_checksum_contents(krb5_context context, register krb5_checksum *val);
+krb5_free_checksum_contents(krb5_context context, krb5_checksum *val);
 
 /**
  * Free a krb5_keyblock structure.
@@ -4785,7 +4785,7 @@ krb5_free_checksum_contents(krb5_context context, register krb5_checksum *val);
  * This function frees the contents of @a val and the structure itself.
  */
 void KRB5_CALLCONV
-krb5_free_keyblock(krb5_context context, register krb5_keyblock *val);
+krb5_free_keyblock(krb5_context context, krb5_keyblock *val);
 
 /**
  * Free the contents of a krb5_keyblock structure.
@@ -4796,7 +4796,7 @@ krb5_free_keyblock(krb5_context context, register krb5_keyblock *val);
  * This function frees the contents of @a key, but not the structure itself.
  */
 void KRB5_CALLCONV
-krb5_free_keyblock_contents(krb5_context context, register krb5_keyblock *key);
+krb5_free_keyblock_contents(krb5_context context, krb5_keyblock *key);
 
 /**
  * Free a krb5_ap_rep_enc_part structure.
@@ -4912,7 +4912,7 @@ krb5_us_timeofday(krb5_context context,
  * Kerberos error codes
  */
 krb5_error_code KRB5_CALLCONV
-krb5_timeofday(krb5_context context, register krb5_timestamp *timeret);
+krb5_timeofday(krb5_context context, krb5_timestamp *timeret);
 
 /**
  * Check if a timestamp is within the allowed clock skew of the current time.
diff --git a/src/kadmin/cli/getdate.y b/src/kadmin/cli/getdate.y
index 059f112..cb039ac 100644
--- a/src/kadmin/cli/getdate.y
+++ b/src/kadmin/cli/getdate.y
@@ -689,9 +689,9 @@ RelativeMonth(time_t Start, time_t RelMonth)
 static int
 LookupWord(char *buff)
 {
-    register char	*p;
-    register char	*q;
-    register const TABLE	*tp;
+    char	*p;
+    char	*q;
+    const TABLE	*tp;
     int			i;
     int			abbrev;
 
@@ -786,8 +786,8 @@ LookupWord(char *buff)
 static int
 yylex()
 {
-    register char	c;
-    register char	*p;
+    char		c;
+    char		*p;
     char		buff[20];
     int			Count;
     int			sign;
diff --git a/src/kadmin/dbutil/strtok.c b/src/kadmin/dbutil/strtok.c
index 0640c74..dee466a 100644
--- a/src/kadmin/dbutil/strtok.c
+++ b/src/kadmin/dbutil/strtok.c
@@ -51,11 +51,11 @@
 
 char *
 nstrtok(s, delim)
-    register char *s;
-    register const char *delim;
+    char *s;
+    const char *delim;
 {
-    register const char *spanp;
-    register int c, sc;
+    const char *spanp;
+    int c, sc;
     char *tok;
     static char *last;
 
diff --git a/src/kadmin/server/ipropd_svc.c b/src/kadmin/server/ipropd_svc.c
index e6e1901..6a21fe6 100644
--- a/src/kadmin/server/ipropd_svc.c
+++ b/src/kadmin/server/ipropd_svc.c
@@ -533,7 +533,7 @@ fail_name:
 
 void
 krb5_iprop_prog_1(struct svc_req *rqstp,
-		  register SVCXPRT *transp)
+		  SVCXPRT *transp)
 {
     union {
 	kdb_last_t iprop_get_updates_1_arg;
diff --git a/src/kadmin/server/kadm_rpc_svc.c b/src/kadmin/server/kadm_rpc_svc.c
index e43ca0d..41fc88a 100644
--- a/src/kadmin/server/kadm_rpc_svc.c
+++ b/src/kadmin/server/kadm_rpc_svc.c
@@ -38,7 +38,7 @@ static int check_rpcsec_auth(struct svc_req *);
 
 void kadm_1(rqstp, transp)
    struct svc_req *rqstp;
-   register SVCXPRT *transp;
+   SVCXPRT *transp;
 {
      union {
 	  cprinc_arg create_principal_2_arg;
diff --git a/src/kdc/kdc_util.c b/src/kdc/kdc_util.c
index 1311121..21af360 100644
--- a/src/kdc/kdc_util.c
+++ b/src/kdc/kdc_util.c
@@ -87,8 +87,8 @@ concat_authorization_data(krb5_context context,
                           krb5_authdata **first, krb5_authdata **second,
                           krb5_authdata ***output)
 {
-    register int i, j;
-    register krb5_authdata **ptr, **retdata;
+    int i, j;
+    krb5_authdata **ptr, **retdata;
 
     /* count up the entries */
     i = 0;
@@ -638,7 +638,7 @@ check_anon(kdc_realm_t *kdc_active_realm,
                             KDC_OPT_ENC_TKT_IN_SKEY | KDC_OPT_CNAME_IN_ADDL_TKT)
 int
 validate_as_request(kdc_realm_t *kdc_active_realm,
-                    register krb5_kdc_req *request, krb5_db_entry client,
+                    krb5_kdc_req *request, krb5_db_entry client,
                     krb5_db_entry server, krb5_timestamp kdc_time,
                     const char **status, krb5_pa_data ***e_data)
 {
diff --git a/src/kdc/tgs_policy.c b/src/kdc/tgs_policy.c
index 33cfbcd..4c08e44 100644
--- a/src/kdc/tgs_policy.c
+++ b/src/kdc/tgs_policy.c
@@ -320,7 +320,7 @@ check_tgs_tgt(kdc_realm_t *kdc_active_realm, krb5_kdc_req *req,
 
 int
 validate_tgs_request(kdc_realm_t *kdc_active_realm,
-                     register krb5_kdc_req *request, krb5_db_entry server,
+                     krb5_kdc_req *request, krb5_db_entry server,
                      krb5_ticket *ticket, krb5_timestamp kdc_time,
                      const char **status, krb5_pa_data ***e_data)
 {
diff --git a/src/lib/apputils/net-server.c b/src/lib/apputils/net-server.c
index a40da92..f0955c5 100644
--- a/src/lib/apputils/net-server.c
+++ b/src/lib/apputils/net-server.c
@@ -1452,7 +1452,7 @@ accept_rpc_connection(verto_ctx *ctx, verto_ev *ev)
     verto_ev_flag flags;
     struct connection *conn;
     fd_set fds;
-    register int s;
+    int s;
 
     conn = verto_get_private(ev);
 
diff --git a/src/lib/crypto/builtin/des/destest.c b/src/lib/crypto/builtin/des/destest.c
index dd2f68e..e51351c 100644
--- a/src/lib/crypto/builtin/des/destest.c
+++ b/src/lib/crypto/builtin/des/destest.c
@@ -159,7 +159,7 @@ convert(text, cblock)
     char *text;
     unsigned char cblock[];
 {
-    register int i;
+    int i;
     for (i = 0; i < 8; i++) {
         if (!isascii((unsigned char)text[i * 2]))
             abort ();
@@ -189,7 +189,7 @@ des_cblock_print_file(x, fp)
     FILE *fp;
 {
     unsigned char *y = (unsigned char *) x;
-    register int i = 0;
+    int i = 0;
     fprintf(fp," 0x { ");
 
     while (i++ < 8) {
@@ -212,7 +212,7 @@ des_cblock_print_file(x, fp)
  */
 int
 mit_des_check_key_parity(key)
-    register mit_des_cblock key;
+    mit_des_cblock key;
 {
     unsigned int i;
 
@@ -231,7 +231,7 @@ mit_des_check_key_parity(key)
 
 void
 mit_des_fixup_key_parity(key)
-    register mit_des_cblock key;
+    mit_des_cblock key;
 {
     unsigned int i;
     for (i=0; i<sizeof(mit_des_cblock); i++)
diff --git a/src/lib/crypto/builtin/des/doc/libdes.doc b/src/lib/crypto/builtin/des/doc/libdes.doc
index 70f9f33..19c03c1 100644
--- a/src/lib/crypto/builtin/des/doc/libdes.doc
+++ b/src/lib/crypto/builtin/des/doc/libdes.doc
@@ -157,8 +157,8 @@ int
 
 int
 	string_to_key(str,key)
-	register char		*str;
-	register C_Block	*key;
+	char		*str;
+	C_Block	*key;
 
 	This routines converts an arbitrary length, null terminated string
 	to an 8 byte DES key, with each byte parity set to odd, per FIPS spec.
diff --git a/src/lib/crypto/builtin/des/f_cksum.c b/src/lib/crypto/builtin/des/f_cksum.c
index 4492ce6..cb482b0 100644
--- a/src/lib/crypto/builtin/des/f_cksum.c
+++ b/src/lib/crypto/builtin/des/f_cksum.c
@@ -56,7 +56,7 @@ mit_des_cbc_cksum(const krb5_octet *in, krb5_octet *out,
     const unsigned DES_INT32 *kp;
     const unsigned char *ip;
     unsigned char *op;
-    register DES_INT32 len;
+    DES_INT32 len;
 
     /*
      * Initialize left and right with the contents of the initial
diff --git a/src/lib/crypto/builtin/des/f_sched.c b/src/lib/crypto/builtin/des/f_sched.c
index 89d820f..666a510 100644
--- a/src/lib/crypto/builtin/des/f_sched.c
+++ b/src/lib/crypto/builtin/des/f_sched.c
@@ -241,14 +241,14 @@ static const unsigned DES_INT32 PC2_D[4][64] = {
 int
 mit_des_make_key_sched(mit_des_cblock key, mit_des_key_schedule schedule)
 {
-    register unsigned DES_INT32 c, d;
+    unsigned DES_INT32 c, d;
 
     {
         /*
          * Need a pointer for the keys and a temporary DES_INT32
          */
         const unsigned char *k;
-        register unsigned DES_INT32 tmp;
+        unsigned DES_INT32 tmp;
 
         /*
          * Fetch the key into something we can work with
@@ -288,10 +288,10 @@ mit_des_make_key_sched(mit_des_cblock key, mit_des_key_schedule schedule)
         /*
          * Need several temporaries in here
          */
-        register unsigned DES_INT32 ltmp, rtmp;
-        register unsigned DES_INT32 *k;
-        register int two_bit_shifts;
-        register int i;
+        unsigned DES_INT32 ltmp, rtmp;
+        unsigned DES_INT32 *k;
+        int two_bit_shifts;
+        int i;
         /*
          * Now iterate to compute the key schedule.  Note that we
          * record the entire set of subkeys in 6 bit chunks since
diff --git a/src/lib/crypto/builtin/des/f_tables.h b/src/lib/crypto/builtin/des/f_tables.h
index a99eb0a..fc91b56 100644
--- a/src/lib/crypto/builtin/des/f_tables.h
+++ b/src/lib/crypto/builtin/des/f_tables.h
@@ -156,7 +156,7 @@ extern const unsigned DES_INT32 des_SP_table[8][64];
  * temporary.  Use this more as a guide for rolling your own, though.
  * The best way to do the IP depends on the form of the data you
  * are dealing with.  If you use this, though, try to make left,
- * right and temp register unsigned DES_INT32s.
+ * right and temp unsigned DES_INT32s.
  */
 #define DES_INITIAL_PERM(left, right, temp) do {        \
         (temp) = DES_IP_RIGHT_BITS((left), (right));    \
@@ -228,8 +228,8 @@ extern const unsigned DES_INT32 des_SP_table[8][64];
  */
 #define DES_DO_ENCRYPT_1(left, right, kp)                               \
     do {                                                                \
-        register int i;                                                 \
-        register unsigned DES_INT32 temp1;                              \
+        int i;                                                          \
+        unsigned DES_INT32 temp1;                                       \
         DEB (("do_encrypt %8lX %8lX \n", left, right));                 \
         DES_INITIAL_PERM((left), (right), (temp1));                     \
         DEB (("  after IP %8lX %8lX\n", left, right));                  \
@@ -246,8 +246,8 @@ extern const unsigned DES_INT32 des_SP_table[8][64];
 
 #define DES_DO_DECRYPT_1(left, right, kp)                               \
     do {                                                                \
-        register int i;                                                 \
-        register unsigned DES_INT32 temp2;                              \
+        int i;                                                          \
+        unsigned DES_INT32 temp2;                                       \
         DES_INITIAL_PERM((left), (right), (temp2));                     \
         (kp) += (2 * 16);                                               \
         for (i = 0; i < 8; i++) {                                       \
diff --git a/src/lib/crypto/builtin/des/t_verify.c b/src/lib/crypto/builtin/des/t_verify.c
index 1f3239f..be0e8ad 100644
--- a/src/lib/crypto/builtin/des/t_verify.c
+++ b/src/lib/crypto/builtin/des/t_verify.c
@@ -339,7 +339,7 @@ void
 flip(array)
     char *array;
 {
-    register int old,new,i,j;
+    int old,new,i,j;
     /* flips the bit order within each byte from 0 lsb to 0 msb */
     for (i = 0; i<=7; i++) {
         old = *array;
diff --git a/src/lib/crypto/builtin/md4/md4.c b/src/lib/crypto/builtin/md4/md4.c
index 27d2ad5..f7c16ca 100644
--- a/src/lib/crypto/builtin/md4/md4.c
+++ b/src/lib/crypto/builtin/md4/md4.c
@@ -151,7 +151,7 @@ krb5int_MD4Final (krb5_MD4_CTX *mdContext)
  */
 static void Transform (krb5_ui_4 *buf, krb5_ui_4 *in)
 {
-    register krb5_ui_4 a = buf[0], b = buf[1], c = buf[2], d = buf[3];
+    krb5_ui_4 a = buf[0], b = buf[1], c = buf[2], d = buf[3];
 
 #if defined(CONFIG_SMALL) && !defined(CONFIG_SMALL_NO_CRYPTO)
     int i;
diff --git a/src/lib/crypto/builtin/md5/md5.c b/src/lib/crypto/builtin/md5/md5.c
index 4a16906..a5e0c82 100644
--- a/src/lib/crypto/builtin/md5/md5.c
+++ b/src/lib/crypto/builtin/md5/md5.c
@@ -189,7 +189,7 @@ krb5int_MD5Final (krb5_MD5_CTX *mdContext)
  */
 static void Transform (krb5_ui_4 *buf, krb5_ui_4 *in)
 {
-    register krb5_ui_4 a = buf[0], b = buf[1], c = buf[2], d = buf[3];
+    krb5_ui_4 a = buf[0], b = buf[1], c = buf[2], d = buf[3];
 
 #if defined(CONFIG_SMALL) && !defined(CONFIG_SMALL_NO_CRYPTO)
 
diff --git a/src/lib/crypto/krb/crc32.c b/src/lib/crypto/krb/crc32.c
index d3b1b7a..11fe312 100644
--- a/src/lib/crypto/krb/crc32.c
+++ b/src/lib/crypto/krb/crc32.c
@@ -148,9 +148,9 @@ static u_long const crc_table[256] = {
 void
 mit_crc32(krb5_pointer in, size_t in_length, unsigned long *cksum)
 {
-    register u_char *data;
-    register u_long c = *cksum;
-    register int idx;
+    u_char *data;
+    u_long c = *cksum;
+    int idx;
     size_t i;
 
     data = (u_char *)in;
diff --git a/src/lib/crypto/krb/keyblocks.c b/src/lib/crypto/krb/keyblocks.c
index 98696f5..1126d0a 100644
--- a/src/lib/crypto/krb/keyblocks.c
+++ b/src/lib/crypto/krb/keyblocks.c
@@ -56,7 +56,7 @@ krb5int_c_init_keyblock(krb5_context context, krb5_enctype enctype,
 }
 
 void
-krb5int_c_free_keyblock(krb5_context context, register krb5_keyblock *val)
+krb5int_c_free_keyblock(krb5_context context, krb5_keyblock *val)
 {
     krb5int_c_free_keyblock_contents(context, val);
     free(val);
diff --git a/src/lib/kdb/iprop_xdr.c b/src/lib/kdb/iprop_xdr.c
index 8bf2c89..b866fdf 100644
--- a/src/lib/kdb/iprop_xdr.c
+++ b/src/lib/kdb/iprop_xdr.c
@@ -12,7 +12,7 @@
 static bool_t
 xdr_int16_t (XDR *xdrs, int16_t *objp)
 {
-    register int32_t *buf;
+    int32_t *buf;
 
     if (!xdr_short (xdrs, objp))
         return FALSE;
@@ -22,7 +22,7 @@ xdr_int16_t (XDR *xdrs, int16_t *objp)
 static bool_t
 xdr_int32_t (XDR *xdrs, int32_t *objp)
 {
-    register int32_t *buf;
+    int32_t *buf;
 
     if (!xdr_int (xdrs, objp))
         return FALSE;
@@ -32,7 +32,7 @@ xdr_int32_t (XDR *xdrs, int32_t *objp)
 static bool_t
 xdr_uint32_t (XDR *xdrs, uint32_t *objp)
 {
-    register int32_t *buf;
+    int32_t *buf;
 
     if (!xdr_u_int (xdrs, objp))
         return FALSE;
@@ -42,7 +42,7 @@ xdr_uint32_t (XDR *xdrs, uint32_t *objp)
 bool_t
 xdr_utf8str_t (XDR *xdrs, utf8str_t *objp)
 {
-    register int32_t *buf;
+    int32_t *buf;
 
     if (!xdr_bytes (xdrs, (char **)&objp->utf8str_t_val, (u_int *) &objp->utf8str_t_len, ~0))
         return FALSE;
@@ -52,7 +52,7 @@ xdr_utf8str_t (XDR *xdrs, utf8str_t *objp)
 bool_t
 xdr_kdb_sno_t (XDR *xdrs, kdb_sno_t *objp)
 {
-    register int32_t *buf;
+    int32_t *buf;
 
     if (!xdr_uint32_t (xdrs, objp))
         return FALSE;
@@ -62,7 +62,7 @@ xdr_kdb_sno_t (XDR *xdrs, kdb_sno_t *objp)
 bool_t
 xdr_kdbe_time_t (XDR *xdrs, kdbe_time_t *objp)
 {
-    register int32_t *buf;
+    int32_t *buf;
 
     if (!xdr_uint32_t (xdrs, &objp->seconds))
         return FALSE;
@@ -74,7 +74,7 @@ xdr_kdbe_time_t (XDR *xdrs, kdbe_time_t *objp)
 bool_t
 xdr_kdbe_key_t (XDR *xdrs, kdbe_key_t *objp)
 {
-    register int32_t *buf;
+    int32_t *buf;
 
     if (!xdr_int32_t (xdrs, &objp->k_ver))
         return FALSE;
@@ -92,7 +92,7 @@ xdr_kdbe_key_t (XDR *xdrs, kdbe_key_t *objp)
 bool_t
 xdr_kdbe_data_t (XDR *xdrs, kdbe_data_t *objp)
 {
-    register int32_t *buf;
+    int32_t *buf;
 
     if (!xdr_int32_t (xdrs, &objp->k_magic))
         return FALSE;
@@ -104,7 +104,7 @@ xdr_kdbe_data_t (XDR *xdrs, kdbe_data_t *objp)
 bool_t
 xdr_kdbe_princ_t (XDR *xdrs, kdbe_princ_t *objp)
 {
-    register int32_t *buf;
+    int32_t *buf;
 
     if (!xdr_utf8str_t (xdrs, &objp->k_realm))
         return FALSE;
@@ -119,7 +119,7 @@ xdr_kdbe_princ_t (XDR *xdrs, kdbe_princ_t *objp)
 bool_t
 xdr_kdbe_tl_t (XDR *xdrs, kdbe_tl_t *objp)
 {
-    register int32_t *buf;
+    int32_t *buf;
 
     if (!xdr_int16_t (xdrs, &objp->tl_type))
         return FALSE;
@@ -131,7 +131,7 @@ xdr_kdbe_tl_t (XDR *xdrs, kdbe_tl_t *objp)
 bool_t
 xdr_kdbe_pw_hist_t (XDR *xdrs, kdbe_pw_hist_t *objp)
 {
-    register int32_t *buf;
+    int32_t *buf;
 
     if (!xdr_array (xdrs, (char **)&objp->kdbe_pw_hist_t_val, (u_int *) &objp->kdbe_pw_hist_t_len, ~0,
                     sizeof (kdbe_key_t), (xdrproc_t) xdr_kdbe_key_t))
@@ -142,7 +142,7 @@ xdr_kdbe_pw_hist_t (XDR *xdrs, kdbe_pw_hist_t *objp)
 bool_t
 xdr_kdbe_attr_type_t (XDR *xdrs, kdbe_attr_type_t *objp)
 {
-    register int32_t *buf;
+    int32_t *buf;
 
     if (!xdr_enum (xdrs, (enum_t *) objp))
         return FALSE;
@@ -152,7 +152,7 @@ xdr_kdbe_attr_type_t (XDR *xdrs, kdbe_attr_type_t *objp)
 bool_t
 xdr_kdbe_val_t (XDR *xdrs, kdbe_val_t *objp)
 {
-    register int32_t *buf;
+    int32_t *buf;
 
     if (!xdr_kdbe_attr_type_t (xdrs, &objp->av_type))
         return FALSE;
@@ -251,7 +251,7 @@ xdr_kdbe_val_t (XDR *xdrs, kdbe_val_t *objp)
 bool_t
 xdr_kdbe_t (XDR *xdrs, kdbe_t *objp)
 {
-    register int32_t *buf;
+    int32_t *buf;
 
     if (!xdr_array (xdrs, (char **)&objp->kdbe_t_val, (u_int *) &objp->kdbe_t_len, ~0,
                     sizeof (kdbe_val_t), (xdrproc_t) xdr_kdbe_val_t))
@@ -262,7 +262,7 @@ xdr_kdbe_t (XDR *xdrs, kdbe_t *objp)
 bool_t
 xdr_kdb_incr_update_t (XDR *xdrs, kdb_incr_update_t *objp)
 {
-    register int32_t *buf;
+    int32_t *buf;
 
     if (!xdr_utf8str_t (xdrs, &objp->kdb_princ_name))
         return FALSE;
@@ -287,7 +287,7 @@ xdr_kdb_incr_update_t (XDR *xdrs, kdb_incr_update_t *objp)
 bool_t
 xdr_kdb_ulog_t (XDR *xdrs, kdb_ulog_t *objp)
 {
-    register int32_t *buf;
+    int32_t *buf;
 
     if (!xdr_array (xdrs, (char **)&objp->kdb_ulog_t_val, (u_int *) &objp->kdb_ulog_t_len, ~0,
                     sizeof (kdb_incr_update_t), (xdrproc_t) xdr_kdb_incr_update_t))
@@ -298,7 +298,7 @@ xdr_kdb_ulog_t (XDR *xdrs, kdb_ulog_t *objp)
 bool_t
 xdr_update_status_t (XDR *xdrs, update_status_t *objp)
 {
-    register int32_t *buf;
+    int32_t *buf;
 
     if (!xdr_enum (xdrs, (enum_t *) objp))
         return FALSE;
@@ -308,7 +308,7 @@ xdr_update_status_t (XDR *xdrs, update_status_t *objp)
 bool_t
 xdr_kdb_last_t (XDR *xdrs, kdb_last_t *objp)
 {
-    register int32_t *buf;
+    int32_t *buf;
 
     if (!xdr_kdb_sno_t (xdrs, &objp->last_sno))
         return FALSE;
@@ -320,7 +320,7 @@ xdr_kdb_last_t (XDR *xdrs, kdb_last_t *objp)
 bool_t
 xdr_kdb_incr_result_t (XDR *xdrs, kdb_incr_result_t *objp)
 {
-    register int32_t *buf;
+    int32_t *buf;
 
     if (!xdr_kdb_last_t (xdrs, &objp->lastentry))
         return FALSE;
@@ -334,7 +334,7 @@ xdr_kdb_incr_result_t (XDR *xdrs, kdb_incr_result_t *objp)
 bool_t
 xdr_kdb_fullresync_result_t (XDR *xdrs, kdb_fullresync_result_t *objp)
 {
-    register int32_t *buf;
+    int32_t *buf;
 
     if (!xdr_kdb_last_t (xdrs, &objp->lastentry))
         return FALSE;
diff --git a/src/lib/krb5/ccache/cc_mslsa.c b/src/lib/krb5/ccache/cc_mslsa.c
index 0300983..0d00c86 100644
--- a/src/lib/krb5/ccache/cc_mslsa.c
+++ b/src/lib/krb5/ccache/cc_mslsa.c
@@ -1638,8 +1638,8 @@ krb5_lcc_initialize(krb5_context context, krb5_ccache id, krb5_principal princ)
 static krb5_error_code KRB5_CALLCONV
 krb5_lcc_close(krb5_context context, krb5_ccache id)
 {
-    register int closeval = KRB5_OK;
-    register krb5_lcc_data *data;
+    int closeval = KRB5_OK;
+    krb5_lcc_data *data;
 
     if (id) {
         data = (krb5_lcc_data *) id->data;
@@ -1665,7 +1665,7 @@ krb5_lcc_close(krb5_context context, krb5_ccache id)
 static krb5_error_code KRB5_CALLCONV
 krb5_lcc_destroy(krb5_context context, krb5_ccache id)
 {
-    register krb5_lcc_data *data;
+    krb5_lcc_data *data;
 
     if (id) {
         data = (krb5_lcc_data *) id->data;
diff --git a/src/lib/krb5/ccache/ccapi/stdcc_util.c b/src/lib/krb5/ccache/ccapi/stdcc_util.c
index 6092ee4..62d847c 100644
--- a/src/lib/krb5/ccache/ccapi/stdcc_util.c
+++ b/src/lib/krb5/ccache/ccapi/stdcc_util.c
@@ -921,8 +921,8 @@ cc_int32 krb5int_free_cc_cred_union (cred_union** creds)
  */
 static krb5_boolean
 times_match(t1, t2)
-    register const krb5_ticket_times *t1;
-    register const krb5_ticket_times *t2;
+    const krb5_ticket_times *t1;
+    const krb5_ticket_times *t2;
 {
     if (t1->renew_till) {
         if (ts_after(t1->renew_till, t2->renew_till))
@@ -938,7 +938,7 @@ times_match(t1, t2)
 
 static krb5_boolean
 times_match_exact (t1, t2)
-    register const krb5_ticket_times *t1, *t2;
+    const krb5_ticket_times *t1, *t2;
 {
     return (t1->authtime == t2->authtime
             && t1->starttime == t2->starttime
@@ -949,7 +949,7 @@ times_match_exact (t1, t2)
 static krb5_boolean
 standard_fields_match(context, mcreds, creds)
     krb5_context context;
-    register const krb5_creds *mcreds, *creds;
+    const krb5_creds *mcreds, *creds;
 {
     return (krb5_principal_compare(context, mcreds->client,creds->client) &&
             krb5_principal_compare(context, mcreds->server,creds->server));
@@ -960,7 +960,7 @@ standard_fields_match(context, mcreds, creds)
 static krb5_boolean
 srvname_match(context, mcreds, creds)
     krb5_context context;
-    register const krb5_creds *mcreds, *creds;
+    const krb5_creds *mcreds, *creds;
 {
     krb5_boolean retval;
     krb5_principal_data p1, p2;
@@ -1008,7 +1008,7 @@ authdata_match(mdata, data)
 
 static krb5_boolean
 data_match(data1, data2)
-    register const krb5_data *data1, *data2;
+    const krb5_data *data1, *data2;
 {
     if (!data1) {
         if (!data2)
diff --git a/src/lib/krb5/keytab/kt_file.c b/src/lib/krb5/keytab/kt_file.c
index 091f2c4..89cb686 100644
--- a/src/lib/krb5/keytab/kt_file.c
+++ b/src/lib/krb5/keytab/kt_file.c
@@ -1182,7 +1182,7 @@ krb5_ktfileint_internal_read_entry(krb5_context context, krb5_keytab id, krb5_ke
     unsigned int u_count, u_princ_size;
     krb5_int16 enctype;
     krb5_int16 princ_size;
-    register int i;
+    int i;
     krb5_int32 size;
     krb5_int32 start_pos, pos;
     krb5_error_code error;
diff --git a/src/lib/krb5/krb/addr_order.c b/src/lib/krb5/krb/addr_order.c
index e9ea0ba..39c9e1e 100644
--- a/src/lib/krb5/krb/addr_order.c
+++ b/src/lib/krb5/krb/addr_order.c
@@ -38,7 +38,7 @@ int KRB5_CALLCONV
 krb5_address_order(krb5_context context, const krb5_address *addr1, const krb5_address *addr2)
 {
     int dir;
-    register int i;
+    int i;
     const int minlen = min(addr1->length, addr2->length);
 
     if (addr1->addrtype != addr2->addrtype)
diff --git a/src/lib/krb5/krb/authdata.c b/src/lib/krb5/krb/authdata.c
index abb2ab9..8fd1f05 100644
--- a/src/lib/krb5/krb/authdata.c
+++ b/src/lib/krb5/krb/authdata.c
@@ -1299,7 +1299,7 @@ krb5int_copy_authdatum(krb5_context context,
 void KRB5_CALLCONV
 krb5_free_authdata(krb5_context context, krb5_authdata **val)
 {
-    register krb5_authdata **temp;
+    krb5_authdata **temp;
 
     if (val == NULL)
         return;
diff --git a/src/lib/krb5/krb/conv_princ.c b/src/lib/krb5/krb/conv_princ.c
index c33c67d..78fc2f4 100644
--- a/src/lib/krb5/krb/conv_princ.c
+++ b/src/lib/krb5/krb/conv_princ.c
@@ -130,8 +130,8 @@ static const struct krb_convert sconv_list[] = {
  * This falls in the "should have been in the ANSI C library"
  * category. :-)
  */
-static char *strnchr(register char *s, register int c,
-                     register unsigned int n)
+static char *
+strnchr(char *s, int c, unsigned int n)
 {
     if (n < 1)
         return 0;
diff --git a/src/lib/krb5/krb/copy_addrs.c b/src/lib/krb5/krb/copy_addrs.c
index 494bccf..9c9bc7b 100644
--- a/src/lib/krb5/krb/copy_addrs.c
+++ b/src/lib/krb5/krb/copy_addrs.c
@@ -51,7 +51,7 @@ krb5_copy_addresses(krb5_context context, krb5_address *const *inaddr, krb5_addr
 {
     krb5_error_code retval;
     krb5_address ** tempaddr;
-    register unsigned int nelems = 0;
+    unsigned int nelems = 0;
 
     if (!inaddr) {
         *outaddr = 0;
diff --git a/src/lib/krb5/krb/copy_auth.c b/src/lib/krb5/krb/copy_auth.c
index 06a0645..ffb7ee9 100644
--- a/src/lib/krb5/krb/copy_auth.c
+++ b/src/lib/krb5/krb/copy_auth.c
@@ -65,7 +65,7 @@ krb5_merge_authdata(krb5_context context,
 {
     krb5_error_code retval;
     krb5_authdata ** tempauthdat;
-    register unsigned int nelems = 0, nelems2 = 0;
+    unsigned int nelems = 0, nelems2 = 0;
 
     *outauthdat = NULL;
     if (!inauthdat1 && !inauthdat2) {
diff --git a/src/lib/krb5/krb/copy_princ.c b/src/lib/krb5/krb/copy_princ.c
index 0d0e6a0..81b3381 100644
--- a/src/lib/krb5/krb/copy_princ.c
+++ b/src/lib/krb5/krb/copy_princ.c
@@ -32,7 +32,7 @@
 krb5_error_code KRB5_CALLCONV
 krb5_copy_principal(krb5_context context, krb5_const_principal inprinc, krb5_principal *outprinc)
 {
-    register krb5_principal tempprinc;
+    krb5_principal tempprinc;
     krb5_int32 i;
 
     tempprinc = (krb5_principal)malloc(sizeof(krb5_principal_data));
diff --git a/src/lib/krb5/krb/decrypt_tk.c b/src/lib/krb5/krb/decrypt_tk.c
index 51f9e8f..e848554 100644
--- a/src/lib/krb5/krb/decrypt_tk.c
+++ b/src/lib/krb5/krb/decrypt_tk.c
@@ -36,7 +36,8 @@
 */
 
 krb5_error_code KRB5_CALLCONV
-krb5_decrypt_tkt_part(krb5_context context, const krb5_keyblock *srv_key, register krb5_ticket *ticket)
+krb5_decrypt_tkt_part(krb5_context context, const krb5_keyblock *srv_key,
+                      krb5_ticket *ticket)
 {
     krb5_enc_tkt_part *dec_tkt_part;
     krb5_data scratch;
diff --git a/src/lib/krb5/krb/encrypt_tk.c b/src/lib/krb5/krb/encrypt_tk.c
index 7fcd0ff..13a774f 100644
--- a/src/lib/krb5/krb/encrypt_tk.c
+++ b/src/lib/krb5/krb/encrypt_tk.c
@@ -39,11 +39,12 @@
 */
 
 krb5_error_code
-krb5_encrypt_tkt_part(krb5_context context, const krb5_keyblock *srv_key, register krb5_ticket *dec_ticket)
+krb5_encrypt_tkt_part(krb5_context context, const krb5_keyblock *srv_key,
+                      krb5_ticket *dec_ticket)
 {
     krb5_data *scratch;
     krb5_error_code retval;
-    register krb5_enc_tkt_part *dec_tkt_part = dec_ticket->enc_part2;
+    krb5_enc_tkt_part *dec_tkt_part = dec_ticket->enc_part2;
 
     /*  start by encoding the to-be-encrypted part. */
     if ((retval = encode_krb5_enc_tkt_part(dec_tkt_part, &scratch))) {
diff --git a/src/lib/krb5/krb/kfree.c b/src/lib/krb5/krb/kfree.c
index 71e7fca..ab2409f 100644
--- a/src/lib/krb5/krb/kfree.c
+++ b/src/lib/krb5/krb/kfree.c
@@ -66,7 +66,7 @@ krb5_free_address(krb5_context context, krb5_address *val)
 void KRB5_CALLCONV
 krb5_free_addresses(krb5_context context, krb5_address **val)
 {
-    register krb5_address **temp;
+    krb5_address **temp;
 
     if (val == NULL)
         return;
@@ -78,7 +78,7 @@ krb5_free_addresses(krb5_context context, krb5_address **val)
 }
 
 void KRB5_CALLCONV
-krb5_free_ap_rep(krb5_context context, register krb5_ap_rep *val)
+krb5_free_ap_rep(krb5_context context, krb5_ap_rep *val)
 {
     if (val == NULL)
         return;
@@ -87,7 +87,7 @@ krb5_free_ap_rep(krb5_context context, register krb5_ap_rep *val)
 }
 
 void KRB5_CALLCONV
-krb5_free_ap_req(krb5_context context, register krb5_ap_req *val)
+krb5_free_ap_req(krb5_context context, krb5_ap_req *val)
 {
     if (val == NULL)
         return;
@@ -130,7 +130,7 @@ krb5_free_authenticator(krb5_context context, krb5_authenticator *val)
 }
 
 void KRB5_CALLCONV
-krb5_free_checksum(krb5_context context, register krb5_checksum *val)
+krb5_free_checksum(krb5_context context, krb5_checksum *val)
 {
     if (val == NULL)
         return;
@@ -139,7 +139,7 @@ krb5_free_checksum(krb5_context context, register krb5_checksum *val)
 }
 
 void KRB5_CALLCONV
-krb5_free_checksum_contents(krb5_context context, register krb5_checksum *val)
+krb5_free_checksum_contents(krb5_context context, krb5_checksum *val)
 {
     if (val == NULL)
         return;
@@ -148,7 +148,7 @@ krb5_free_checksum_contents(krb5_context context, register krb5_checksum *val)
 }
 
 void KRB5_CALLCONV
-krb5_free_cred(krb5_context context, register krb5_cred *val)
+krb5_free_cred(krb5_context context, krb5_cred *val)
 {
     if (val == NULL)
         return;
@@ -183,9 +183,9 @@ krb5_free_cred_contents(krb5_context context, krb5_creds *val)
 }
 
 void KRB5_CALLCONV
-krb5_free_cred_enc_part(krb5_context context, register krb5_cred_enc_part *val)
+krb5_free_cred_enc_part(krb5_context context, krb5_cred_enc_part *val)
 {
-    register krb5_cred_info **temp;
+    krb5_cred_info **temp;
 
     if (val == NULL)
         return;
@@ -273,7 +273,7 @@ void krb5_free_etype_info(krb5_context context, krb5_etype_info info)
 
 
 void KRB5_CALLCONV
-krb5_free_enc_kdc_rep_part(krb5_context context, register krb5_enc_kdc_rep_part *val)
+krb5_free_enc_kdc_rep_part(krb5_context context, krb5_enc_kdc_rep_part *val)
 {
     if (val == NULL)
         return;
@@ -300,7 +300,7 @@ krb5_free_enc_tkt_part(krb5_context context, krb5_enc_tkt_part *val)
 
 
 void KRB5_CALLCONV
-krb5_free_error(krb5_context context, register krb5_error *val)
+krb5_free_error(krb5_context context, krb5_error *val)
 {
     if (val == NULL)
         return;
@@ -342,13 +342,13 @@ krb5_free_kdc_req(krb5_context context, krb5_kdc_req *val)
 }
 
 void KRB5_CALLCONV
-krb5_free_keyblock_contents(krb5_context context, register krb5_keyblock *key)
+krb5_free_keyblock_contents(krb5_context context, krb5_keyblock *key)
 {
     krb5int_c_free_keyblock_contents (context, key);
 }
 
 void KRB5_CALLCONV
-krb5_free_keyblock(krb5_context context, register krb5_keyblock *val)
+krb5_free_keyblock(krb5_context context, krb5_keyblock *val)
 {
     krb5int_c_free_keyblock (context, val);
 }
@@ -358,7 +358,7 @@ krb5_free_keyblock(krb5_context context, register krb5_keyblock *val)
 void KRB5_CALLCONV
 krb5_free_last_req(krb5_context context, krb5_last_req_entry **val)
 {
-    register krb5_last_req_entry **temp;
+    krb5_last_req_entry **temp;
 
     if (val == NULL)
         return;
@@ -384,7 +384,7 @@ k5_zapfree_pa_data(krb5_pa_data **val)
 void KRB5_CALLCONV
 krb5_free_pa_data(krb5_context context, krb5_pa_data **val)
 {
-    register krb5_pa_data **temp;
+    krb5_pa_data **temp;
 
     if (val == NULL)
         return;
@@ -398,7 +398,7 @@ krb5_free_pa_data(krb5_context context, krb5_pa_data **val)
 void KRB5_CALLCONV
 krb5_free_principal(krb5_context context, krb5_principal val)
 {
-    register krb5_int32 i;
+    krb5_int32 i;
 
     if (!val)
         return;
@@ -414,7 +414,7 @@ krb5_free_principal(krb5_context context, krb5_principal val)
 }
 
 void KRB5_CALLCONV
-krb5_free_priv(krb5_context context, register krb5_priv *val)
+krb5_free_priv(krb5_context context, krb5_priv *val)
 {
     if (val == NULL)
         return;
@@ -423,7 +423,7 @@ krb5_free_priv(krb5_context context, register krb5_priv *val)
 }
 
 void KRB5_CALLCONV
-krb5_free_priv_enc_part(krb5_context context, register krb5_priv_enc_part *val)
+krb5_free_priv_enc_part(krb5_context context, krb5_priv_enc_part *val)
 {
     if (val == NULL)
         return;
@@ -434,7 +434,7 @@ krb5_free_priv_enc_part(krb5_context context, register krb5_priv_enc_part *val)
 }
 
 void KRB5_CALLCONV
-krb5_free_safe(krb5_context context, register krb5_safe *val)
+krb5_free_safe(krb5_context context, krb5_safe *val)
 {
     if (val == NULL)
         return;
@@ -460,7 +460,7 @@ krb5_free_ticket(krb5_context context, krb5_ticket *val)
 void KRB5_CALLCONV
 krb5_free_tickets(krb5_context context, krb5_ticket **val)
 {
-    register krb5_ticket **temp;
+    krb5_ticket **temp;
 
     if (val == NULL)
         return;
@@ -473,7 +473,7 @@ krb5_free_tickets(krb5_context context, krb5_ticket **val)
 void KRB5_CALLCONV
 krb5_free_tgt_creds(krb5_context context, krb5_creds **tgts)
 {
-    register krb5_creds **tgtpp;
+    krb5_creds **tgtpp;
     if (tgts == NULL)
         return;
     for (tgtpp = tgts; *tgtpp; tgtpp++)
diff --git a/src/lib/krb5/krb/pr_to_salt.c b/src/lib/krb5/krb/pr_to_salt.c
index 00d0c73..7bcb627 100644
--- a/src/lib/krb5/krb/pr_to_salt.c
+++ b/src/lib/krb5/krb/pr_to_salt.c
@@ -34,8 +34,7 @@ principal2salt_internal(krb5_context, krb5_const_principal,
  * Convert a krb5_principal into the default salt for that principal.
  */
 static krb5_error_code
-principal2salt_internal(krb5_context context,
-                        register krb5_const_principal pr,
+principal2salt_internal(krb5_context context, krb5_const_principal pr,
                         krb5_data *ret, int use_realm)
 {
     unsigned int size = 0, offset=0;
@@ -69,15 +68,15 @@ principal2salt_internal(krb5_context context,
 }
 
 krb5_error_code
-krb5_principal2salt(krb5_context context,
-                    register krb5_const_principal pr, krb5_data *ret)
+krb5_principal2salt(krb5_context context, krb5_const_principal pr,
+                    krb5_data *ret)
 {
     return principal2salt_internal(context, pr, ret, 1);
 }
 
 krb5_error_code
-krb5_principal2salt_norealm(krb5_context context,
-                            register krb5_const_principal pr, krb5_data *ret)
+krb5_principal2salt_norealm(krb5_context context, krb5_const_principal pr,
+                            krb5_data *ret)
 {
     return principal2salt_internal(context, pr, ret, 0);
 }
diff --git a/src/lib/krb5/krb/unparse.c b/src/lib/krb5/krb/unparse.c
index 5bb64d0..6a54b22 100644
--- a/src/lib/krb5/krb/unparse.c
+++ b/src/lib/krb5/krb/unparse.c
@@ -225,7 +225,8 @@ cleanup:
 }
 
 krb5_error_code KRB5_CALLCONV
-krb5_unparse_name(krb5_context context, krb5_const_principal principal, register char **name)
+krb5_unparse_name(krb5_context context, krb5_const_principal principal,
+                  char **name)
 {
     if (name != NULL)                      /* name == NULL will return error from _ext */
         *name = NULL;
diff --git a/src/lib/krb5/krb/walk_rtree.c b/src/lib/krb5/krb/walk_rtree.c
index f4e8e35..4074fe8 100644
--- a/src/lib/krb5/krb/walk_rtree.c
+++ b/src/lib/krb5/krb/walk_rtree.c
@@ -615,7 +615,7 @@ comtail(struct hstate *c, struct hstate *s, int sep)
 void
 krb5_free_realm_tree(krb5_context context, krb5_principal *realms)
 {
-    register krb5_principal *nrealms = realms;
+    krb5_principal *nrealms = realms;
     if (realms == NULL)
         return;
     while (*nrealms) {
diff --git a/src/lib/krb5/os/full_ipadr.c b/src/lib/krb5/os/full_ipadr.c
index 0863cab..61fc74b 100644
--- a/src/lib/krb5/os/full_ipadr.c
+++ b/src/lib/krb5/os/full_ipadr.c
@@ -36,8 +36,8 @@ krb5_make_full_ipaddr(krb5_context context, krb5_int32 adr,
 {
     unsigned long smushaddr = (unsigned long) adr; /* already in net order */
     unsigned short smushport = (unsigned short) port; /* ditto */
-    register krb5_address *retaddr;
-    register krb5_octet *marshal;
+    krb5_address *retaddr;
+    krb5_octet *marshal;
     krb5_addrtype temptype;
     krb5_int32 templength;
 
diff --git a/src/lib/krb5/os/mk_faddr.c b/src/lib/krb5/os/mk_faddr.c
index 2577df3..c7a6ddd 100644
--- a/src/lib/krb5/os/mk_faddr.c
+++ b/src/lib/krb5/os/mk_faddr.c
@@ -38,7 +38,7 @@ krb5_error_code
 krb5_make_fulladdr(krb5_context context, krb5_address *kaddr,
                    krb5_address *kport, krb5_address *raddr)
 {
-    register krb5_octet * marshal;
+    krb5_octet *marshal;
     krb5_int32 tmp32;
     krb5_int16 tmp16;
 
diff --git a/src/lib/krb5/os/net_read.c b/src/lib/krb5/os/net_read.c
index 7e5e954..64a4622 100644
--- a/src/lib/krb5/os/net_read.c
+++ b/src/lib/krb5/os/net_read.c
@@ -37,7 +37,7 @@
  */
 
 int
-krb5_net_read(krb5_context context, int fd, register char *buf, register int len)
+krb5_net_read(krb5_context context, int fd, char *buf, int len)
 {
     int cc, len2 = 0;
 
diff --git a/src/lib/krb5/os/port2ip.c b/src/lib/krb5/os/port2ip.c
index 905d60f..94c0430 100644
--- a/src/lib/krb5/os/port2ip.c
+++ b/src/lib/krb5/os/port2ip.c
@@ -34,7 +34,7 @@ krb5_unpack_full_ipaddr(krb5_context context, const krb5_address *inaddr, krb5_i
 {
     unsigned long smushaddr;
     unsigned short smushport;
-    register krb5_octet *marshal;
+    krb5_octet *marshal;
     krb5_addrtype temptype;
     krb5_ui_4 templength;
 
diff --git a/src/lib/krb5/os/timeofday.c b/src/lib/krb5/os/timeofday.c
index d4e36b1..82fde92 100644
--- a/src/lib/krb5/os/timeofday.c
+++ b/src/lib/krb5/os/timeofday.c
@@ -29,7 +29,7 @@
 #include <time.h>
 
 krb5_error_code KRB5_CALLCONV
-krb5_timeofday(krb5_context context, register krb5_timestamp *timeret)
+krb5_timeofday(krb5_context context, krb5_timestamp *timeret)
 {
     krb5_os_context os_ctx;
     time_t tval;
diff --git a/src/lib/rpc/auth_none.c b/src/lib/rpc/auth_none.c
index de8d6d0..85ddbf7 100644
--- a/src/lib/rpc/auth_none.c
+++ b/src/lib/rpc/auth_none.c
@@ -76,9 +76,9 @@ static struct authnone_private {
 AUTH *
 authnone_create(void)
 {
-	register struct authnone_private *ap = authnone_private;
+	struct authnone_private *ap = authnone_private;
 	XDR xdr_stream;
-	register XDR *xdrs;
+	XDR *xdrs;
 
 	if (ap == 0) {
 		ap = (struct authnone_private *)calloc(1, sizeof (*ap));
@@ -104,7 +104,7 @@ authnone_create(void)
 static bool_t
 authnone_marshal(AUTH *client, XDR *xdrs)
 {
-	register struct authnone_private *ap = authnone_private;
+	struct authnone_private *ap = authnone_private;
 
 	if (ap == 0)
 		return (0);
diff --git a/src/lib/rpc/auth_unix.c b/src/lib/rpc/auth_unix.c
index 6cb998d..7853efa 100644
--- a/src/lib/rpc/auth_unix.c
+++ b/src/lib/rpc/auth_unix.c
@@ -99,15 +99,15 @@ authunix_create(
 	char *machname,
 	int uid,
 	int gid,
-	register int len,
+	int len,
 	int *aup_gids)
 {
 	struct authunix_parms aup;
 	char mymem[MAX_AUTH_BYTES];
 	struct timeval now;
 	XDR xdrs;
-	register AUTH *auth;
-	register struct audata *au;
+	AUTH *auth;
+	struct audata *au;
 
 	/*
 	 * Allocate and set up auth handle
@@ -175,10 +175,10 @@ authunix_create(
 AUTH *
 authunix_create_default(void)
 {
-	register int len;
+	int len;
 	char machname[MAX_MACHINE_NAME + 1];
-	register int uid;
-	register int gid;
+	int uid;
+	int gid;
 	GETGROUPS_T gids[NGRPS];
 	int igids[NGRPS], i;
 
@@ -208,15 +208,15 @@ authunix_nextverf(AUTH *auth)
 static bool_t
 authunix_marshal(AUTH *auth, XDR *xdrs)
 {
-	register struct audata *au = AUTH_PRIVATE(auth);
+	struct audata *au = AUTH_PRIVATE(auth);
 
 	return (XDR_PUTBYTES(xdrs, au->au_marshed, au->au_mpos));
 }
 
 static bool_t
-authunix_validate(register AUTH *auth, struct opaque_auth *verf)
+authunix_validate(AUTH *auth, struct opaque_auth *verf)
 {
-	register struct audata *au;
+	struct audata *au;
 	XDR xdrs;
 
 	if (verf->oa_flavor == AUTH_SHORT) {
@@ -242,13 +242,13 @@ authunix_validate(register AUTH *auth, struct opaque_auth *verf)
 }
 
 static bool_t
-authunix_refresh(register AUTH *auth, struct rpc_msg *msg)
+authunix_refresh(AUTH *auth, struct rpc_msg *msg)
 {
-	register struct audata *au = AUTH_PRIVATE(auth);
+	struct audata *au = AUTH_PRIVATE(auth);
 	struct authunix_parms aup;
 	struct timeval now;
 	XDR xdrs;
-	register int stat;
+	int stat;
 
 	if (auth->ah_cred.oa_base == au->au_origcred.oa_base) {
 		/* there is no hope.  Punt */
@@ -284,9 +284,9 @@ done:
 }
 
 static void
-authunix_destroy(register AUTH *auth)
+authunix_destroy(AUTH *auth)
 {
-	register struct audata *au = AUTH_PRIVATE(auth);
+	struct audata *au = AUTH_PRIVATE(auth);
 
 	mem_free(au->au_origcred.oa_base, au->au_origcred.oa_length);
 
@@ -306,11 +306,11 @@ authunix_destroy(register AUTH *auth)
  * sets private data, au_marshed and au_mpos
  */
 static void
-marshal_new_auth(register AUTH *auth)
+marshal_new_auth(AUTH *auth)
 {
 	XDR		xdr_stream;
-	register XDR	*xdrs = &xdr_stream;
-	register struct audata *au = AUTH_PRIVATE(auth);
+	XDR	*xdrs = &xdr_stream;
+	struct audata *au = AUTH_PRIVATE(auth);
 
 	xdrmem_create(xdrs, au->au_marshed, MAX_AUTH_BYTES, XDR_ENCODE);
 	if ((! xdr_opaque_auth(xdrs, &(auth->ah_cred))) ||
diff --git a/src/lib/rpc/authunix_prot.c b/src/lib/rpc/authunix_prot.c
index 5bc5172..512d5a5 100644
--- a/src/lib/rpc/authunix_prot.c
+++ b/src/lib/rpc/authunix_prot.c
@@ -50,7 +50,7 @@ static char sccsid[] = "@(#)authunix_prot.c 1.15 87/08/11 Copyr 1984 Sun Micro";
  * XDR for unix authentication parameters.
  */
 bool_t
-xdr_authunix_parms(register XDR *xdrs, register struct authunix_parms *p)
+xdr_authunix_parms(XDR *xdrs, struct authunix_parms *p)
 {
 
 	if (xdr_u_int32(xdrs, &(p->aup_time))
diff --git a/src/lib/rpc/clnt_raw.c b/src/lib/rpc/clnt_raw.c
index 1d7fc62..515086b 100644
--- a/src/lib/rpc/clnt_raw.c
+++ b/src/lib/rpc/clnt_raw.c
@@ -140,8 +140,8 @@ clntraw_call(
 	void * resultsp,
 	struct timeval timeout)
 {
-	register struct clntraw_private *clp = clntraw_private;
-	register XDR *xdrs = &clp->xdr_stream;
+	struct clntraw_private *clp = clntraw_private;
+	XDR *xdrs = &clp->xdr_stream;
 	struct rpc_msg msg;
 	enum clnt_stat status;
 	struct rpc_err error;
@@ -236,8 +236,8 @@ clntraw_freeres(
 	xdrproc_t xdr_res,
 	void *res_ptr)
 {
-	register struct clntraw_private *clp = clntraw_private;
-	register XDR *xdrs = &clp->xdr_stream;
+	struct clntraw_private *clp = clntraw_private;
+	XDR *xdrs = &clp->xdr_stream;
 	bool_t rval;
 
 	if (clp == 0)
diff --git a/src/lib/rpc/clnt_simple.c b/src/lib/rpc/clnt_simple.c
index 4ec99ed..39186e5 100644
--- a/src/lib/rpc/clnt_simple.c
+++ b/src/lib/rpc/clnt_simple.c
@@ -70,7 +70,7 @@ callrpc(
 	xdrproc_t outproc,
 	char *out)
 {
-	register struct callrpc_private *crp = callrpc_private;
+	struct callrpc_private *crp = callrpc_private;
 	struct sockaddr_in server_addr;
 	enum clnt_stat clnt_stat;
 	struct hostent *hp;
diff --git a/src/lib/rpc/clnt_tcp.c b/src/lib/rpc/clnt_tcp.c
index 02056fd..8776190 100644
--- a/src/lib/rpc/clnt_tcp.c
+++ b/src/lib/rpc/clnt_tcp.c
@@ -130,7 +130,7 @@ clnttcp_create(
 	u_int recvsz)
 {
 	CLIENT *h;
-	register struct ct_data *ct = 0;
+	struct ct_data *ct = 0;
 	struct timeval now;
 	struct rpc_msg call_msg;
 
@@ -244,7 +244,7 @@ fooy:
 
 static enum clnt_stat
 clnttcp_call(
-	register CLIENT *h,
+	CLIENT *h,
 	rpcproc_t proc,
 	xdrproc_t xdr_args,
 	void * args_ptr,
@@ -252,12 +252,12 @@ clnttcp_call(
 	void * results_ptr,
 	struct timeval timeout)
 {
-	register struct ct_data *ct = (struct ct_data *) h->cl_private;
-	register XDR *xdrs = &(ct->ct_xdrs);
+	struct ct_data *ct = h->cl_private;
+	XDR *xdrs = &ct->ct_xdrs;
 	struct rpc_msg reply_msg;
 	uint32_t x_id;
 	uint32_t *msg_x_id = &ct->ct_u.ct_mcalli;	/* yuk */
-	register bool_t shipnow;
+	bool_t shipnow;
 	int refreshes = 2;
 	long procl = proc;
 
@@ -356,8 +356,7 @@ clnttcp_geterr(
 	CLIENT *h,
 	struct rpc_err *errp)
 {
-	register struct ct_data *ct =
-	    (struct ct_data *) h->cl_private;
+	struct ct_data *ct = h->cl_private;
 
 	*errp = ct->ct_error;
 }
@@ -368,8 +367,8 @@ clnttcp_freeres(
 	xdrproc_t xdr_res,
 	void * res_ptr)
 {
-	register struct ct_data *ct = (struct ct_data *)cl->cl_private;
-	register XDR *xdrs = &(ct->ct_xdrs);
+	struct ct_data *ct = cl->cl_private;
+	XDR *xdrs = &ct->ct_xdrs;
 
 	xdrs->x_op = XDR_FREE;
 	return ((*xdr_res)(xdrs, res_ptr));
@@ -387,7 +386,7 @@ clnttcp_control(
 	int request,
 	void *info)
 {
-	register struct ct_data *ct = (struct ct_data *)cl->cl_private;
+	struct ct_data *ct = cl->cl_private;
 	GETSOCKNAME_ARG3_TYPE len;
 
 	switch (request) {
@@ -417,8 +416,7 @@ clnttcp_control(
 static void
 clnttcp_destroy(CLIENT *h)
 {
-	register struct ct_data *ct =
-	    (struct ct_data *) h->cl_private;
+	struct ct_data *ct = h->cl_private;
 
 	if (ct->ct_closeit)
                 (void)closesocket(ct->ct_sock);
@@ -436,9 +434,9 @@ static int
 readtcp(
         char *ctptr,
 	caddr_t buf,
-	register int len)
+	int len)
 {
-  register struct ct_data *ct = (struct ct_data *)(void *)ctptr;
+  struct ct_data *ct = (void *)ctptr;
   struct timeval tout;
 #ifdef FD_SETSIZE
 	fd_set mask;
@@ -449,7 +447,7 @@ readtcp(
 	FD_ZERO(&mask);
 	FD_SET(ct->ct_sock, &mask);
 #else
-	register int mask = 1 << (ct->ct_sock);
+	int mask = 1 << (ct->ct_sock);
 	int readfds;
 
 	if (len == 0)
@@ -498,7 +496,7 @@ writetcp(
 	int len)
 {
 	struct ct_data *ct = (struct ct_data *)(void *)ctptr;
-	register int i, cnt;
+	int i, cnt;
 
 	for (cnt = len; cnt > 0; cnt -= i, buf += i) {
 		if ((i = write(ct->ct_sock, buf, (size_t) cnt)) == -1) {
diff --git a/src/lib/rpc/clnt_udp.c b/src/lib/rpc/clnt_udp.c
index 7a51916..3d7a459 100644
--- a/src/lib/rpc/clnt_udp.c
+++ b/src/lib/rpc/clnt_udp.c
@@ -121,12 +121,12 @@ clntudp_bufcreate(
 	rpcprog_t program,
 	rpcvers_t version,
 	struct timeval wait,
-	register int *sockp,
+	int *sockp,
 	u_int sendsz,
 	u_int recvsz)
 {
 	CLIENT *cl;
-	register struct cu_data *cu = 0;
+	struct cu_data *cu = 0;
 	struct timeval now;
 	struct rpc_msg call_msg;
 
@@ -217,7 +217,7 @@ clntudp_create(
 	rpcprog_t program,
 	rpcvers_t version,
 	struct timeval wait,
-	register int *sockp)
+	int *sockp)
 {
 
 	return(clntudp_bufcreate(raddr, program, version, wait, sockp,
@@ -226,7 +226,7 @@ clntudp_create(
 
 static enum clnt_stat
 clntudp_call(
-	register CLIENT	*cl,		/* client handle */
+	CLIENT	*cl,			/* client handle */
 	rpcproc_t	proc,		/* procedure number */
 	xdrproc_t	xargs,		/* xdr routine for args */
 	void *		argsp,		/* pointer to args */
@@ -236,17 +236,17 @@ clntudp_call(
 					 * giving up */
 	)
 {
-	register struct cu_data *cu = (struct cu_data *)cl->cl_private;
-	register XDR *xdrs;
-	register int outlen;
-	register ssize_t inlen;
+	struct cu_data *cu = (struct cu_data *)cl->cl_private;
+	XDR *xdrs;
+	int outlen;
+	ssize_t inlen;
 	GETSOCKNAME_ARG3_TYPE fromlen; /* Assumes recvfrom uses same type */
 #ifdef FD_SETSIZE
 	fd_set readfds;
 	fd_set mask;
 #else
 	int readfds;
-	register int mask;
+	int mask;
 #endif /* def FD_SETSIZE */
 	struct sockaddr_in from;
 	struct rpc_msg reply_msg;
@@ -416,7 +416,7 @@ clntudp_geterr(
 	CLIENT *cl,
 	struct rpc_err *errp)
 {
-	register struct cu_data *cu = (struct cu_data *)cl->cl_private;
+	struct cu_data *cu = (struct cu_data *)cl->cl_private;
 
 	*errp = cu->cu_error;
 }
@@ -428,8 +428,8 @@ clntudp_freeres(
 	xdrproc_t xdr_res,
 	void *res_ptr)
 {
-	register struct cu_data *cu = (struct cu_data *)cl->cl_private;
-	register XDR *xdrs = &(cu->cu_outxdrs);
+	struct cu_data *cu = cl->cl_private;
+	XDR *xdrs = &cu->cu_outxdrs;
 
 	xdrs->x_op = XDR_FREE;
 	return ((*xdr_res)(xdrs, res_ptr));
@@ -448,7 +448,7 @@ clntudp_control(
 	int request,
 	void *info)
 {
-	register struct cu_data *cu = (struct cu_data *)cl->cl_private;
+	struct cu_data *cu = cl->cl_private;
 
 	switch (request) {
 	case CLSET_TIMEOUT:
@@ -478,7 +478,7 @@ clntudp_control(
 static void
 clntudp_destroy(CLIENT *cl)
 {
-	register struct cu_data *cu = (struct cu_data *)cl->cl_private;
+	struct cu_data *cu = (struct cu_data *)cl->cl_private;
 
 	if (cu->cu_closeit)
                 (void)closesocket(cu->cu_sock);
diff --git a/src/lib/rpc/getrpcent.c b/src/lib/rpc/getrpcent.c
index db03dae..ad6793f 100644
--- a/src/lib/rpc/getrpcent.c
+++ b/src/lib/rpc/getrpcent.c
@@ -66,7 +66,7 @@ static char RPCDB[] = "/etc/rpc";
 static struct rpcdata *
 get_rpcdata(void)
 {
-	register struct rpcdata *d = rpcdata;
+	struct rpcdata *d = rpcdata;
 
 	if (d == 0) {
 		d = (struct rpcdata *)calloc(1, sizeof (struct rpcdata));
@@ -76,10 +76,10 @@ get_rpcdata(void)
 }
 
 struct rpcent *
-getrpcbynumber(register int number)
+getrpcbynumber(int number)
 {
-	register struct rpcdata *d = get_rpcdata();
-	register struct rpcent *p;
+	struct rpcdata *d = get_rpcdata();
+	struct rpcent *p;
 	int reason;
 	char adrstr[16], *val = NULL;
 	int vallen;
@@ -116,7 +116,7 @@ getrpcbyname(const char *name)
 
 SETRPCENT_TYPE setrpcent(int f)
 {
-	register struct rpcdata *d = _rpcdata();
+	struct rpcdata *d = _rpcdata();
 
 	if (d == 0)
 		return;
@@ -134,7 +134,7 @@ SETRPCENT_TYPE setrpcent(int f)
 
 ENDRPCENT_TYPE endrpcent(void)
 {
-	register struct rpcdata *d = _rpcdata();
+	struct rpcdata *d = _rpcdata();
 
 	if (d == 0)
 		return;
@@ -155,7 +155,7 @@ getrpcent(void)
 	int reason;
 	char *key = NULL, *val = NULL;
 	int keylen, vallen;
-	register struct rpcdata *d = _rpcdata();
+	struct rpcdata *d = _rpcdata();
 
 	if (d == 0)
 		return(NULL);
@@ -172,9 +172,9 @@ getrpcent(void)
 static struct rpcent *
 interpret(char *val, int len)
 {
-	register struct rpcdata *d = _rpcdata();
+	struct rpcdata *d = _rpcdata();
 	char *p;
-	register char *cp, **q;
+	char *cp, **q;
 
 	if (d == 0)
 		return;
diff --git a/src/lib/rpc/pmap_clnt.c b/src/lib/rpc/pmap_clnt.c
index cda40fb..952a251 100644
--- a/src/lib/rpc/pmap_clnt.c
+++ b/src/lib/rpc/pmap_clnt.c
@@ -69,7 +69,7 @@ pmap_set(
 {
 	struct sockaddr_in myaddress;
 	int sock = -1;
-	register CLIENT *client;
+	CLIENT *client;
 	struct pmap parms;
 	bool_t rslt;
 
@@ -149,7 +149,7 @@ pmap_unset(
 {
 	struct sockaddr_in myaddress;
 	int sock = -1;
-	register CLIENT *client;
+	CLIENT *client;
 	struct pmap parms;
 	bool_t rslt;
 
diff --git a/src/lib/rpc/pmap_getmaps.c b/src/lib/rpc/pmap_getmaps.c
index 7790a3a..b8a9cec 100644
--- a/src/lib/rpc/pmap_getmaps.c
+++ b/src/lib/rpc/pmap_getmaps.c
@@ -69,7 +69,7 @@ pmap_getmaps(struct sockaddr_in *address)
 	struct pmaplist *head = (struct pmaplist *)NULL;
 	int sock = -1;
 	struct timeval minutetimeout;
-	register CLIENT *client;
+	CLIENT *client;
 
 	minutetimeout.tv_sec = 60;
 	minutetimeout.tv_usec = 0;
diff --git a/src/lib/rpc/pmap_getport.c b/src/lib/rpc/pmap_getport.c
index 2fdb73c..66635a1 100644
--- a/src/lib/rpc/pmap_getport.c
+++ b/src/lib/rpc/pmap_getport.c
@@ -68,7 +68,7 @@ pmap_getport(
 {
 	unsigned short port = 0;
 	int sock = -1;
-	register CLIENT *client;
+	CLIENT *client;
 	struct pmap parms;
 
 	address->sin_port = htons(PMAPPORT);
diff --git a/src/lib/rpc/pmap_prot2.c b/src/lib/rpc/pmap_prot2.c
index 7fd7d3e..aeccac6 100644
--- a/src/lib/rpc/pmap_prot2.c
+++ b/src/lib/rpc/pmap_prot2.c
@@ -84,7 +84,7 @@ static char sccsid[] = "@(#)pmap_prot2.c 1.3 87/08/11 Copyr 1984 Sun Micro";
  * this sounds like a job for xdr_reference!
  */
 bool_t
-xdr_pmaplist(register XDR *xdrs, register struct pmaplist **rp)
+xdr_pmaplist(XDR *xdrs, struct pmaplist **rp)
 {
 	/*
 	 * more_elements is pre-computed in case the direction is
@@ -92,8 +92,8 @@ xdr_pmaplist(register XDR *xdrs, register struct pmaplist **rp)
 	 * xdr_bool when the direction is XDR_DECODE.
 	 */
 	bool_t more_elements;
-	register int freeing = (xdrs->x_op == XDR_FREE);
-	register struct pmaplist **next = NULL;
+	int freeing = (xdrs->x_op == XDR_FREE);
+	struct pmaplist **next = NULL;
 
 	while (TRUE) {
 		more_elements = (bool_t)(*rp != NULL);
diff --git a/src/lib/rpc/pmap_rmt.c b/src/lib/rpc/pmap_rmt.c
index 4829e3f..8c7e30c 100644
--- a/src/lib/rpc/pmap_rmt.c
+++ b/src/lib/rpc/pmap_rmt.c
@@ -89,7 +89,7 @@ pmap_rmtcall(
 	rpcport_t *port_ptr)
 {
         SOCKET sock = INVALID_SOCKET;
-	register CLIENT *client;
+	CLIENT *client;
 	struct rmtcallargs a;
 	struct rmtcallres r;
 	enum clnt_stat stat;
@@ -123,8 +123,8 @@ pmap_rmtcall(
  */
 bool_t
 xdr_rmtcall_args(
-	register XDR *xdrs,
-	register struct rmtcallargs *cap)
+	XDR *xdrs,
+	struct rmtcallargs *cap)
 {
 	u_int lenposition, argposition, position;
 
@@ -154,8 +154,8 @@ xdr_rmtcall_args(
  */
 bool_t
 xdr_rmtcallres(
-	register XDR *xdrs,
-	register struct rmtcallres *crp)
+	XDR *xdrs,
+	struct rmtcallres *crp)
 {
 	caddr_t port_ptr;
 
@@ -237,7 +237,7 @@ clnt_broadcast(
 	enum clnt_stat stat;
 	AUTH *unix_auth = authunix_create_default();
 	XDR xdr_stream;
-	register XDR *xdrs = &xdr_stream;
+	XDR *xdrs = &xdr_stream;
 	int outlen, nets;
 	ssize_t inlen;
 	GETSOCKNAME_ARG3_TYPE fromlen;
@@ -248,11 +248,11 @@ clnt_broadcast(
 	fd_set readfds;
 #else
 	int readfds;
-	register int mask;
+	int mask;
 #endif /* def FD_SETSIZE */
-	register int i;
+	int i;
 	bool_t done = FALSE;
-	register uint32_t xid;
+	uint32_t xid;
 	rpcport_t port;
 	struct in_addr addrs[20];
 	struct sockaddr_in baddr, raddr; /* broadcast and response addresses */
diff --git a/src/lib/rpc/rpc_callmsg.c b/src/lib/rpc/rpc_callmsg.c
index 6752524..27d298f 100644
--- a/src/lib/rpc/rpc_callmsg.c
+++ b/src/lib/rpc/rpc_callmsg.c
@@ -47,10 +47,10 @@ static char sccsid[] = "@(#)rpc_callmsg.c 1.4 87/08/11 Copyr 1984 Sun Micro";
  * XDR a call message
  */
 bool_t
-xdr_callmsg(register XDR *xdrs, register struct rpc_msg *cmsg)
+xdr_callmsg(XDR *xdrs, struct rpc_msg *cmsg)
 {
-	register rpc_inline_t *buf;
-	register struct opaque_auth *oa;
+	rpc_inline_t *buf;
+	struct opaque_auth *oa;
 
 	if (xdrs->x_op == XDR_ENCODE) {
 		if (cmsg->rm_call.cb_cred.oa_length > MAX_AUTH_BYTES) {
diff --git a/src/lib/rpc/svc.c b/src/lib/rpc/svc.c
index e923ac0..c171ecc 100644
--- a/src/lib/rpc/svc.c
+++ b/src/lib/rpc/svc.c
@@ -96,7 +96,7 @@ static void svc_do_xprt(SVCXPRT *xprt);
 void
 xprt_register(SVCXPRT *xprt)
 {
-	register int sock = xprt->xp_sock;
+	int sock = xprt->xp_sock;
 
 #ifdef FD_SETSIZE
 	if (gssrpc_svc_fdset_init == 0) {
@@ -130,7 +130,7 @@ xprt_register(SVCXPRT *xprt)
 void
 xprt_unregister(SVCXPRT *xprt)
 {
-	register int sock = xprt->xp_sock;
+	int sock = xprt->xp_sock;
 
 #ifdef FD_SETSIZE
 	if ((sock < FD_SETSIZE) && (xports[sock] == xprt)) {
@@ -166,7 +166,7 @@ svc_register(
 	int protocol)
 {
 	struct svc_callout *prev;
-	register struct svc_callout *s;
+	struct svc_callout *s;
 
 	if ((s = svc_find(prog, vers, &prev)) != NULL_SVC) {
 		if (s->sc_dispatch == dispatch)
@@ -199,7 +199,7 @@ svc_unregister(
 	rpcvers_t vers)
 {
 	struct svc_callout *prev;
-	register struct svc_callout *s;
+	struct svc_callout *s;
 
 	if ((s = svc_find(prog, vers, &prev)) == NULL_SVC)
 		return;
@@ -224,7 +224,7 @@ svc_find(
 	rpcvers_t vers,
 	struct svc_callout **prev)
 {
-	register struct svc_callout *s, *p;
+	struct svc_callout *s, *p;
 
 	p = NULL_SVC;
 	for (s = svc_head; s != NULL_SVC; s = s->sc_next) {
@@ -244,7 +244,7 @@ done:
  */
 bool_t
 svc_sendreply(
-	register SVCXPRT *xprt,
+	SVCXPRT *xprt,
 	xdrproc_t xdr_results,
 	caddr_t xdr_location)
 {
@@ -263,7 +263,7 @@ svc_sendreply(
  * No procedure error reply
  */
 void
-svcerr_noproc(register SVCXPRT *xprt)
+svcerr_noproc(SVCXPRT *xprt)
 {
 	struct rpc_msg rply;
 
@@ -278,7 +278,7 @@ svcerr_noproc(register SVCXPRT *xprt)
  * Can't decode args error reply
  */
 void
-svcerr_decode(register SVCXPRT *xprt)
+svcerr_decode(SVCXPRT *xprt)
 {
 	struct rpc_msg rply;
 
@@ -293,7 +293,7 @@ svcerr_decode(register SVCXPRT *xprt)
  * Some system error
  */
 void
-svcerr_systemerr(register SVCXPRT *xprt)
+svcerr_systemerr(SVCXPRT *xprt)
 {
 	struct rpc_msg rply;
 
@@ -335,7 +335,7 @@ svcerr_weakauth(SVCXPRT *xprt)
  * Program unavailable error reply
  */
 void
-svcerr_noprog(register SVCXPRT *xprt)
+svcerr_noprog(SVCXPRT *xprt)
 {
 	struct rpc_msg rply;
 
@@ -351,7 +351,7 @@ svcerr_noprog(register SVCXPRT *xprt)
  */
 void
 svcerr_progvers(
-	register SVCXPRT *xprt,
+	SVCXPRT *xprt,
 	rpcvers_t low_vers,
 	rpcvers_t high_vers)
 {
@@ -417,8 +417,8 @@ svc_getreqset(FDSET_TYPE *readfds)
 #ifndef FD_SETSIZE
 	int readfds_local = *readfds;
 #endif
-	register SVCXPRT *xprt;
-	register int sock;
+	SVCXPRT *xprt;
+	int sock;
 
 #ifdef FD_SETSIZE
 	for (sock = 0; sock <= svc_maxfd; sock++) {
@@ -467,7 +467,7 @@ svc_do_xprt(SVCXPRT *xprt)
 	r.rq_clntcred = cookedcred;
 
 	do {
-		register struct svc_callout *s;
+		struct svc_callout *s;
 		enum auth_stat why;
 
 		if (!SVC_RECV(xprt, &msg))
diff --git a/src/lib/rpc/svc_auth.c b/src/lib/rpc/svc_auth.c
index 5fedef7..c1967bc 100644
--- a/src/lib/rpc/svc_auth.c
+++ b/src/lib/rpc/svc_auth.c
@@ -47,8 +47,8 @@
  *
  *	enum auth_stat
  *	flavorx_auth(rqst, msg)
- *		register struct svc_req *rqst;
- *		register struct rpc_msg *msg;
+ *		struct svc_req *rqst;
+ *		struct rpc_msg *msg;
  *
  */
 
@@ -85,11 +85,11 @@ static int svcauthnum = sizeof(svcauthsw) / sizeof(struct svcauthsw_type);
  */
 enum auth_stat
 gssrpc__authenticate(
-	register struct svc_req *rqst,
+	struct svc_req *rqst,
 	struct rpc_msg *msg,
 	bool_t *no_dispatch)
 {
-	register int cred_flavor, i;
+	int cred_flavor, i;
 
 	rqst->rq_cred = msg->rm_call.cb_cred;
 	rqst->rq_xprt->xp_verf.oa_flavor = gssrpc__null_auth.oa_flavor;
diff --git a/src/lib/rpc/svc_auth_gssapi.c b/src/lib/rpc/svc_auth_gssapi.c
index f3b3e35..182262e 100644
--- a/src/lib/rpc/svc_auth_gssapi.c
+++ b/src/lib/rpc/svc_auth_gssapi.c
@@ -154,8 +154,8 @@ badauth(OM_uint32 maj, OM_uint32 minor, SVCXPRT *xprt)
 }
 
 enum auth_stat gssrpc__svcauth_gssapi(
-     register struct svc_req *rqst,
-     register struct rpc_msg *msg,
+     struct svc_req *rqst,
+     struct rpc_msg *msg,
      bool_t *no_dispatch)
 {
      XDR xdrs;
diff --git a/src/lib/rpc/svc_auth_unix.c b/src/lib/rpc/svc_auth_unix.c
index a4b87d8..ee3057e 100644
--- a/src/lib/rpc/svc_auth_unix.c
+++ b/src/lib/rpc/svc_auth_unix.c
@@ -53,14 +53,14 @@ static char sccsid[] = "@(#)svc_auth_unix.c 1.28 88/02/08 Copyr 1984 Sun Micro";
  */
 enum auth_stat
 gssrpc__svcauth_unix(
-	register struct svc_req *rqst,
-	register struct rpc_msg *msg,
+	struct svc_req *rqst,
+	struct rpc_msg *msg,
 	bool_t *dispatch)
 {
-	register enum auth_stat stat;
+	enum auth_stat stat;
 	XDR xdrs;
-	register struct authunix_parms *aup;
-	register rpc_inline_t *buf;
+	struct authunix_parms *aup;
+	rpc_inline_t *buf;
 	struct area {
 		struct authunix_parms area_aup;
 		char area_machname[MAX_MACHINE_NAME+1];
diff --git a/src/lib/rpc/svc_raw.c b/src/lib/rpc/svc_raw.c
index ef5f3d3..dba6c29 100644
--- a/src/lib/rpc/svc_raw.c
+++ b/src/lib/rpc/svc_raw.c
@@ -74,7 +74,7 @@ static struct xp_ops server_ops = {
 SVCXPRT *
 svcraw_create(void)
 {
-	register struct svcraw_private *srp = svcraw_private;
+	struct svcraw_private *srp = svcraw_private;
 
 	if (srp == 0) {
 		srp = (struct svcraw_private *)calloc(1, sizeof (*srp));
@@ -100,8 +100,8 @@ svcraw_stat(SVCXPRT *xprt)
 static bool_t
 svcraw_recv(SVCXPRT *xprt, struct rpc_msg *msg)
 {
-	register struct svcraw_private *srp = svcraw_private;
-	register XDR *xdrs;
+	struct svcraw_private *srp = svcraw_private;
+	XDR *xdrs;
 
 	if (srp == 0)
 		return (0);
@@ -116,8 +116,8 @@ svcraw_recv(SVCXPRT *xprt, struct rpc_msg *msg)
 static bool_t
 svcraw_reply(SVCXPRT *xprt, struct rpc_msg *msg)
 {
-	register struct svcraw_private *srp = svcraw_private;
-	register XDR *xdrs;
+	struct svcraw_private *srp = svcraw_private;
+	XDR *xdrs;
 
 	if (srp == 0)
 		return (FALSE);
@@ -133,7 +133,7 @@ svcraw_reply(SVCXPRT *xprt, struct rpc_msg *msg)
 static bool_t
 svcraw_getargs(SVCXPRT *xprt, xdrproc_t xdr_args, void *args_ptr)
 {
-	register struct svcraw_private *srp = svcraw_private;
+	struct svcraw_private *srp = svcraw_private;
 
 	if (srp == 0)
 		return (FALSE);
@@ -147,8 +147,8 @@ svcraw_getargs(SVCXPRT *xprt, xdrproc_t xdr_args, void *args_ptr)
 static bool_t
 svcraw_freeargs(SVCXPRT *xprt, xdrproc_t xdr_args, void *args_ptr)
 {
-	register struct svcraw_private *srp = svcraw_private;
-	register XDR *xdrs;
+	struct svcraw_private *srp = svcraw_private;
+	XDR *xdrs;
 
 	if (srp == 0)
 		return (FALSE);
diff --git a/src/lib/rpc/svc_tcp.c b/src/lib/rpc/svc_tcp.c
index d78cf55..54ce70e 100644
--- a/src/lib/rpc/svc_tcp.c
+++ b/src/lib/rpc/svc_tcp.c
@@ -141,8 +141,8 @@ svctcp_create(
 	u_int recvsize)
 {
 	bool_t madesock = FALSE;
-	register SVCXPRT *xprt;
-	register struct tcp_rendezvous *r;
+	SVCXPRT *xprt;
+	struct tcp_rendezvous *r;
 	struct sockaddr_storage ss;
 	struct sockaddr *sa = (struct sockaddr *)&ss;
 	socklen_t len;
@@ -225,8 +225,8 @@ makefd_xprt(
 	u_int sendsize,
 	u_int recvsize)
 {
-	register SVCXPRT *xprt;
-	register struct tcp_conn *cd;
+	SVCXPRT *xprt;
+	struct tcp_conn *cd;
 
 #ifdef FD_SETSIZE
 	if (fd >= FD_SETSIZE) {
@@ -272,7 +272,7 @@ makefd_xprt(
 
 static bool_t
 rendezvous_request(
-	register SVCXPRT *xprt,
+	SVCXPRT *xprt,
 	struct rpc_msg *msg)
 {
         SOCKET sock;
@@ -309,16 +309,16 @@ rendezvous_request(
 }
 
 static enum xprt_stat
-rendezvous_stat(register SVCXPRT *xprt)
+rendezvous_stat(SVCXPRT *xprt)
 {
 
 	return (XPRT_IDLE);
 }
 
 static void
-svctcp_destroy(register SVCXPRT *xprt)
+svctcp_destroy(SVCXPRT *xprt)
 {
-	register struct tcp_conn *cd = (struct tcp_conn *)xprt->xp_p1;
+	struct tcp_conn *cd = xprt->xp_p1;
 
 	xprt_unregister(xprt);
         (void)closesocket(xprt->xp_sock);
@@ -352,10 +352,10 @@ static int
 readtcp(
         char *xprtptr,
 	caddr_t buf,
-	register int len)
+	int len)
 {
-	register SVCXPRT *xprt = (SVCXPRT *)(void *)xprtptr;
-	register int sock = xprt->xp_sock;
+	SVCXPRT *xprt = (void *)xprtptr;
+	int sock = xprt->xp_sock;
 	struct timeval tout;
 #ifdef FD_SETSIZE
 	fd_set mask;
@@ -364,7 +364,7 @@ readtcp(
 	FD_ZERO(&mask);
 	FD_SET(sock, &mask);
 #else
-	register int mask = 1 << sock;
+	int mask = 1 << sock;
 	int readfds;
 #endif /* def FD_SETSIZE */
 #ifdef FD_SETSIZE
@@ -401,8 +401,8 @@ writetcp(
 	caddr_t buf,
 	int len)
 {
-	register SVCXPRT *xprt = (SVCXPRT *)(void *) xprtptr;
-	register int i, cnt;
+	SVCXPRT *xprt = (void *)xprtptr;
+	int i, cnt;
 
 	for (cnt = len; cnt > 0; cnt -= i, buf += i) {
 		if ((i = write(xprt->xp_sock, buf, (size_t) cnt)) < 0) {
@@ -417,8 +417,7 @@ writetcp(
 static enum xprt_stat
 svctcp_stat(SVCXPRT *xprt)
 {
-	register struct tcp_conn *cd =
-	    (struct tcp_conn *)(xprt->xp_p1);
+	struct tcp_conn *cd = xprt->xp_p1;
 
 	if (cd->strm_stat == XPRT_DIED)
 		return (XPRT_DIED);
@@ -430,11 +429,10 @@ svctcp_stat(SVCXPRT *xprt)
 static bool_t
 svctcp_recv(
 	SVCXPRT *xprt,
-	register struct rpc_msg *msg)
+	struct rpc_msg *msg)
 {
-	register struct tcp_conn *cd =
-	    (struct tcp_conn *)(xprt->xp_p1);
-	register XDR *xdrs = &(cd->xdrs);
+	struct tcp_conn *cd = xprt->xp_p1;
+	XDR *xdrs = &cd->xdrs;
 
 	xdrs->x_op = XDR_DECODE;
 	(void)xdrrec_skiprecord(xdrs);
@@ -466,8 +464,7 @@ svctcp_freeargs(
 	xdrproc_t xdr_args,
 	void * args_ptr)
 {
-	register XDR *xdrs =
-	    &(((struct tcp_conn *)(xprt->xp_p1))->xdrs);
+	XDR *xdrs = &((struct tcp_conn *)(xprt->xp_p1))->xdrs;
 
 	xdrs->x_op = XDR_FREE;
 	return ((*xdr_args)(xdrs, args_ptr));
@@ -475,12 +472,11 @@ svctcp_freeargs(
 
 static bool_t svctcp_reply(
 	SVCXPRT *xprt,
-	register struct rpc_msg *msg)
+	struct rpc_msg *msg)
 {
-	register struct tcp_conn *cd =
-		(struct tcp_conn *)(xprt->xp_p1);
-	register XDR *xdrs = &(cd->xdrs);
-	register bool_t stat;
+	struct tcp_conn *cd = xprt->xp_p1;
+	XDR *xdrs = &cd->xdrs;
+	bool_t stat;
 
 	xdrproc_t xdr_results = NULL;
 	caddr_t xdr_location = 0;
diff --git a/src/lib/rpc/svc_udp.c b/src/lib/rpc/svc_udp.c
index f70bf01..d3140df 100644
--- a/src/lib/rpc/svc_udp.c
+++ b/src/lib/rpc/svc_udp.c
@@ -108,13 +108,13 @@ struct svcudp_data {
  */
 SVCXPRT *
 svcudp_bufcreate(
-	register int sock,
+	int sock,
 	u_int sendsz,
 	u_int recvsz)
 {
 	bool_t madesock = FALSE;
-	register SVCXPRT *xprt;
-	register struct svcudp_data *su;
+	SVCXPRT *xprt;
+	struct svcudp_data *su;
 	struct sockaddr_storage ss;
 	struct sockaddr *sa = (struct sockaddr *)&ss;
 	socklen_t len;
@@ -191,14 +191,14 @@ svcudp_stat(SVCXPRT *xprt)
 
 static bool_t
 svcudp_recv(
-	register SVCXPRT *xprt,
+	SVCXPRT *xprt,
 	struct rpc_msg *msg)
 {
         struct msghdr dummy;
 	struct iovec dummy_iov[1];
-	register struct svcudp_data *su = su_data(xprt);
-	register XDR *xdrs = &(su->su_xdrs);
-	register int rlen;
+	struct svcudp_data *su = su_data(xprt);
+	XDR *xdrs = &su->su_xdrs;
+	int rlen;
 	char *reply;
 	uint32_t replylen;
 	socklen_t addrlen;
@@ -243,13 +243,13 @@ svcudp_recv(
 }
 
 static bool_t svcudp_reply(
-	register SVCXPRT *xprt,
+	SVCXPRT *xprt,
 	struct rpc_msg *msg)
 {
-     register struct svcudp_data *su = su_data(xprt);
-     register XDR *xdrs = &(su->su_xdrs);
-     register int slen;
-     register bool_t stat = FALSE;
+     struct svcudp_data *su = su_data(xprt);
+     XDR *xdrs = &su->su_xdrs;
+     int slen;
+     bool_t stat = FALSE;
 
      xdrproc_t xdr_results = NULL;
      caddr_t xdr_location = 0;
@@ -305,16 +305,16 @@ svcudp_freeargs(
 	xdrproc_t xdr_args,
 	void * args_ptr)
 {
-	register XDR *xdrs = &(su_data(xprt)->su_xdrs);
+	XDR *xdrs = &su_data(xprt)->su_xdrs;
 
 	xdrs->x_op = XDR_FREE;
 	return ((*xdr_args)(xdrs, args_ptr));
 }
 
 static void
-svcudp_destroy(register SVCXPRT *xprt)
+svcudp_destroy(SVCXPRT *xprt)
 {
-	register struct svcudp_data *su = su_data(xprt);
+	struct svcudp_data *su = su_data(xprt);
 
 	xprt_unregister(xprt);
         if (xprt->xp_sock != INVALID_SOCKET)
@@ -446,9 +446,9 @@ cache_set(
 	SVCXPRT *xprt,
 	uint32_t replylen)
 {
-	register cache_ptr victim;
-	register cache_ptr *vicp;
-	register struct svcudp_data *su = su_data(xprt);
+	cache_ptr victim;
+	cache_ptr *vicp;
+	struct svcudp_data *su = su_data(xprt);
 	struct udp_cache *uc = (struct udp_cache *) su->su_cache;
 	u_int loc;
 	char *newbuf;
@@ -514,9 +514,9 @@ cache_get(
 	uint32_t *replylenp)
 {
 	u_int loc;
-	register cache_ptr ent;
-	register struct svcudp_data *su = su_data(xprt);
-	register struct udp_cache *uc = (struct udp_cache *) su->su_cache;
+	cache_ptr ent;
+	struct svcudp_data *su = su_data(xprt);
+	struct udp_cache *uc = su->su_cache;
 
 #	define EQADDR(a1, a2) (memcmp((char*)&a1, (char*)&a2, sizeof(a1)) == 0)
 
diff --git a/src/lib/rpc/unit-test/rpc_test_svc.c b/src/lib/rpc/unit-test/rpc_test_svc.c
index 88939f0..c54c081 100644
--- a/src/lib/rpc/unit-test/rpc_test_svc.c
+++ b/src/lib/rpc/unit-test/rpc_test_svc.c
@@ -16,7 +16,7 @@ static int _rpcsvccount = 0;		/* Number of requests being serviced */
 void
 rpc_test_prog_1_svc(rqstp, transp)
 	struct svc_req *rqstp;
-	register SVCXPRT *transp;
+	SVCXPRT *transp;
 {
 	union {
 		char *rpc_test_echo_1_arg;
diff --git a/src/lib/rpc/unit-test/server.c b/src/lib/rpc/unit-test/server.c
index 7451558..13e99bb 100644
--- a/src/lib/rpc/unit-test/server.c
+++ b/src/lib/rpc/unit-test/server.c
@@ -60,7 +60,7 @@ main(int argc, char **argv)
 {
      int c, prot;
      auth_gssapi_name names[2];
-     register SVCXPRT *transp;
+     SVCXPRT *transp;
      extern int optind;
 #ifdef POSIX_SIGNALS
      struct sigaction sa;
diff --git a/src/lib/rpc/xdr.c b/src/lib/rpc/xdr.c
index 2b7c17b..8c14ddc 100644
--- a/src/lib/rpc/xdr.c
+++ b/src/lib/rpc/xdr.c
@@ -212,7 +212,7 @@ xdr_u_long(XDR *xdrs, u_long *ulp)
  * XDR short integers
  */
 bool_t
-xdr_short(register XDR *xdrs, short *sp)
+xdr_short(XDR *xdrs, short *sp)
 {
 	long l;
 
@@ -243,7 +243,7 @@ xdr_short(register XDR *xdrs, short *sp)
  * XDR unsigned short integers
  */
 bool_t
-xdr_u_short(register XDR *xdrs, u_short *usp)
+xdr_u_short(XDR *xdrs, u_short *usp)
 {
 	u_long l;
 
@@ -318,7 +318,7 @@ xdr_u_char(XDR *xdrs, u_char *cp)
  * XDR booleans
  */
 bool_t
-xdr_bool(register XDR *xdrs, bool_t *bp)
+xdr_bool(XDR *xdrs, bool_t *bp)
 {
 	long lb;
 
@@ -384,7 +384,7 @@ xdr_enum(XDR *xdrs, enum_t *ep)
 bool_t
 xdr_opaque(XDR *xdrs, caddr_t cp, u_int cnt)
 {
-	register u_int rndup;
+	u_int rndup;
 	static int crud[BYTES_PER_XDR_UNIT];
 
 	/*
@@ -438,8 +438,8 @@ xdr_bytes(
 	u_int *sizep,
 	u_int maxsize)
 {
-	register char *sp = *cpp;  /* sp is the actual string pointer */
-	register u_int nodesize;
+	char *sp = *cpp;  /* sp is the actual string pointer */
+	u_int nodesize;
 
 	/*
 	 * first deal with the length since xdr bytes are counted
@@ -563,7 +563,7 @@ xdr_union(
 	xdrproc_t dfault	/* default xdr routine */
 	)
 {
-	register enum_t dscm;
+	enum_t dscm;
 
 	/*
 	 * we deal with the discriminator;  it's an enum
@@ -607,7 +607,7 @@ xdr_union(
 bool_t
 xdr_string(XDR *xdrs, char **cpp, u_int maxsize)
 {
-	register char *sp = *cpp;  /* sp is the actual string pointer */
+	char *sp = *cpp;	/* sp is the actual string pointer */
 	u_int size;
 	u_int nodesize;
 
diff --git a/src/lib/rpc/xdr_alloc.c b/src/lib/rpc/xdr_alloc.c
index 8c58cff..f39210e 100644
--- a/src/lib/rpc/xdr_alloc.c
+++ b/src/lib/rpc/xdr_alloc.c
@@ -86,14 +86,14 @@ static void xdralloc_destroy(XDR *xdrs)
 }
 
 static bool_t xdralloc_notsup_getlong(
-     register XDR *xdrs,
+     XDR *xdrs,
      long *lp)
 {
      return FALSE;
 }
 
 static bool_t xdralloc_putlong(
-     register XDR *xdrs,
+     XDR *xdrs,
      long *lp)
 {
      int l = htonl((uint32_t) *lp); /* XXX need bounds checking */
@@ -108,18 +108,18 @@ static bool_t xdralloc_putlong(
 
 
 static bool_t xdralloc_notsup_getbytes(
-     register XDR *xdrs,
+     XDR *xdrs,
      caddr_t addr,
-     register unsigned int len)
+     unsigned int len)
 {
      return FALSE;
 }
 
 
 static bool_t xdralloc_putbytes(
-     register XDR *xdrs,
+     XDR *xdrs,
      caddr_t addr,
-     register unsigned int len)
+     unsigned int len)
 {
      if (DynInsert((DynObject) xdrs->x_private,
 		   DynSize((DynObject) xdrs->x_private),
@@ -134,7 +134,7 @@ static unsigned int xdralloc_getpos(XDR *xdrs)
 }
 
 static bool_t xdralloc_notsup_setpos(
-     register XDR *xdrs,
+     XDR *xdrs,
      unsigned int lp)
 {
      return FALSE;
@@ -143,7 +143,7 @@ static bool_t xdralloc_notsup_setpos(
 
 
 static rpc_inline_t *xdralloc_inline(
-     register XDR *xdrs,
+     XDR *xdrs,
      int len)
 {
      return (rpc_inline_t *) 0;
diff --git a/src/lib/rpc/xdr_array.c b/src/lib/rpc/xdr_array.c
index c3d16fb..aeaa7f2 100644
--- a/src/lib/rpc/xdr_array.c
+++ b/src/lib/rpc/xdr_array.c
@@ -59,7 +59,7 @@ static char sccsid[] = "@(#)xdr_array.c 1.10 87/08/11 Copyr 1984 Sun Micro";
  */
 bool_t
 xdr_array(
-	register XDR *xdrs,
+	XDR *xdrs,
 	caddr_t *addrp,		/* array pointer */
 	u_int *sizep,		/* number of elements */
 	u_int maxsize,		/* max numberof elements */
@@ -67,11 +67,11 @@ xdr_array(
 	xdrproc_t elproc	/* xdr routine to handle each element */
 	)
 {
-	register u_int i;
-	register caddr_t target = *addrp;
-	register u_int c;  /* the actual element count */
-	register bool_t stat = TRUE;
-	register u_int nodesize;
+	u_int i;
+	caddr_t target = *addrp;
+	u_int c;  /* the actual element count */
+	bool_t stat = TRUE;
+	u_int nodesize;
 
 	/* like strings, arrays are really counted arrays */
 	if (! xdr_u_int(xdrs, sizep)) {
@@ -139,14 +139,14 @@ xdr_array(
  */
 bool_t
 xdr_vector(
-	register XDR *xdrs,
-	register char *basep,
-	register u_int nelem,
-	register u_int elemsize,
-	register xdrproc_t xdr_elem)
+	XDR *xdrs,
+	char *basep,
+	u_int nelem,
+	u_int elemsize,
+	xdrproc_t xdr_elem)
 {
-	register u_int i;
-	register char *elptr;
+	u_int i;
+	char *elptr;
 
 	elptr = basep;
 	for (i = 0; i < nelem; i++) {
diff --git a/src/lib/rpc/xdr_float.c b/src/lib/rpc/xdr_float.c
index 5b6e9ca..82059b7 100644
--- a/src/lib/rpc/xdr_float.c
+++ b/src/lib/rpc/xdr_float.c
@@ -198,11 +198,11 @@ static struct dbl_limits {
 bool_t
 xdr_double(XDR *xdrs, double *dp)
 {
-	register int32_t *lp;
+	int32_t *lp;
 #if defined(vax)
 	struct	ieee_double id;
 	struct	vax_double vd;
-	register struct dbl_limits *lim;
+	struct dbl_limits *lim;
 	int i;
 #endif
 
diff --git a/src/lib/rpc/xdr_mem.c b/src/lib/rpc/xdr_mem.c
index f3eb047..8d3f120 100644
--- a/src/lib/rpc/xdr_mem.c
+++ b/src/lib/rpc/xdr_mem.c
@@ -160,8 +160,8 @@ xdrmem_getpos(XDR *xdrs)
 static bool_t
 xdrmem_setpos(XDR *xdrs, u_int pos)
 {
-	register caddr_t newaddr = xdrs->x_base + pos;
-	register caddr_t lastaddr = (char *) xdrs->x_private + xdrs->x_handy;
+	caddr_t newaddr = xdrs->x_base + pos;
+	caddr_t lastaddr = (char *)xdrs->x_private + xdrs->x_handy;
 
 	if ((long)newaddr > (long)lastaddr)
 		return (FALSE);
diff --git a/src/lib/rpc/xdr_rec.c b/src/lib/rpc/xdr_rec.c
index 0587882..28894f3 100644
--- a/src/lib/rpc/xdr_rec.c
+++ b/src/lib/rpc/xdr_rec.c
@@ -144,8 +144,7 @@ xdrrec_create(
 	int (*writeit)() /* like write, but pass it a tcp_handle, not sock */
 	)
 {
-	register RECSTREAM *rstrm =
-		(RECSTREAM *)mem_alloc(sizeof(RECSTREAM));
+	RECSTREAM *rstrm = mem_alloc(sizeof(RECSTREAM));
 
 	if (rstrm == NULL) {
 		(void)fprintf(stderr, "xdrrec_create: out of memory\n");
@@ -199,8 +198,8 @@ xdrrec_create(
 static bool_t
 xdrrec_getlong(XDR *xdrs, long *lp)
 {
-	register RECSTREAM *rstrm = (RECSTREAM *)(xdrs->x_private);
-	register int32_t *buflp = (int32_t *)(void *)(rstrm->in_finger);
+	RECSTREAM *rstrm = xdrs->x_private;
+	int32_t *buflp = (void *)(rstrm->in_finger);
 	uint32_t mylong;
 
 	/* first try the inline, fast case */
@@ -222,8 +221,8 @@ xdrrec_getlong(XDR *xdrs, long *lp)
 static bool_t
 xdrrec_putlong(XDR *xdrs, long *lp)
 {
-	register RECSTREAM *rstrm = (RECSTREAM *)(xdrs->x_private);
-	register int32_t *dest_lp = ((int32_t *)(void *)(rstrm->out_finger));
+	RECSTREAM *rstrm = xdrs->x_private;
+	int32_t *dest_lp = (void *)(rstrm->out_finger);
 
 	if (rstrm->out_boundry - rstrm->out_finger < BYTES_PER_XDR_UNIT) {
 		/*
@@ -243,8 +242,8 @@ xdrrec_putlong(XDR *xdrs, long *lp)
 static bool_t  /* must manage buffers, fragments, and records */
 xdrrec_getbytes(XDR *xdrs, caddr_t addr, u_int len)
 {
-	register RECSTREAM *rstrm = (RECSTREAM *)(xdrs->x_private);
-	register u_int current;
+	RECSTREAM *rstrm = xdrs->x_private;
+	u_int current;
 
 	while (len > 0) {
 		current = rstrm->fbtbc;
@@ -268,8 +267,8 @@ xdrrec_getbytes(XDR *xdrs, caddr_t addr, u_int len)
 static bool_t
 xdrrec_putbytes(XDR *xdrs, caddr_t addr, u_int len)
 {
-	register RECSTREAM *rstrm = (RECSTREAM *)(xdrs->x_private);
-	register size_t current;
+	RECSTREAM *rstrm = xdrs->x_private;
+	size_t current;
 
 	while (len > 0) {
 		current = (size_t) ((long)rstrm->out_boundry -
@@ -291,8 +290,8 @@ xdrrec_putbytes(XDR *xdrs, caddr_t addr, u_int len)
 static u_int
 xdrrec_getpos(XDR *xdrs)
 {
-	register RECSTREAM *rstrm = (RECSTREAM *)xdrs->x_private;
-	register int pos;
+	RECSTREAM *rstrm = xdrs->x_private;
+	int pos;
 
 	switch (xdrs->x_op) {
 
@@ -316,7 +315,7 @@ xdrrec_getpos(XDR *xdrs)
 static bool_t
 xdrrec_setpos(XDR *xdrs, u_int pos)
 {
-	register RECSTREAM *rstrm = (RECSTREAM *)xdrs->x_private;
+	RECSTREAM *rstrm = xdrs->x_private;
 	u_int currpos = xdrrec_getpos(xdrs);
 	int delta = currpos - pos;
 	caddr_t newpos;
@@ -353,7 +352,7 @@ xdrrec_setpos(XDR *xdrs, u_int pos)
 static rpc_inline_t *
 xdrrec_inline(XDR *xdrs, int len)
 {
-	register RECSTREAM *rstrm = (RECSTREAM *)xdrs->x_private;
+	RECSTREAM *rstrm = xdrs->x_private;
 	rpc_inline_t * buf = NULL;
 
 	if (len < 0)
@@ -386,7 +385,7 @@ xdrrec_inline(XDR *xdrs, int len)
 static void
 xdrrec_destroy(XDR *xdrs)
 {
-	register RECSTREAM *rstrm = (RECSTREAM *)xdrs->x_private;
+	RECSTREAM *rstrm = xdrs->x_private;
 
 	mem_free(rstrm->the_buffer,
 		rstrm->sendsize + rstrm->recvsize + BYTES_PER_XDR_UNIT);
@@ -405,7 +404,7 @@ xdrrec_destroy(XDR *xdrs)
 bool_t
 xdrrec_skiprecord(XDR *xdrs)
 {
-	register RECSTREAM *rstrm = (RECSTREAM *)(xdrs->x_private);
+	RECSTREAM *rstrm = xdrs->x_private;
 
 	while (rstrm->fbtbc > 0 || (! rstrm->last_frag)) {
 		if (! skip_input_bytes(rstrm, rstrm->fbtbc))
@@ -426,7 +425,7 @@ xdrrec_skiprecord(XDR *xdrs)
 bool_t
 xdrrec_eof(XDR *xdrs)
 {
-	register RECSTREAM *rstrm = (RECSTREAM *)(xdrs->x_private);
+	RECSTREAM *rstrm = xdrs->x_private;
 
 	while (rstrm->fbtbc > 0 || (! rstrm->last_frag)) {
 		if (! skip_input_bytes(rstrm, rstrm->fbtbc))
@@ -449,8 +448,8 @@ xdrrec_eof(XDR *xdrs)
 bool_t
 xdrrec_endofrecord(XDR *xdrs, bool_t sendnow)
 {
-	register RECSTREAM *rstrm = (RECSTREAM *)(xdrs->x_private);
-	register uint32_t len;  /* fragment length */
+	RECSTREAM *rstrm = xdrs->x_private;
+	uint32_t len;  /* fragment length */
 
 	if (sendnow || rstrm->frag_sent ||
 		((long)rstrm->out_finger + BYTES_PER_XDR_UNIT >=
@@ -473,8 +472,8 @@ xdrrec_endofrecord(XDR *xdrs, bool_t sendnow)
 static bool_t
 flush_out(RECSTREAM *rstrm, bool_t eor)
 {
-	register uint32_t eormask = (eor == TRUE) ? LAST_FRAG : 0;
-	register uint32_t len = (u_long)(rstrm->out_finger) -
+	uint32_t eormask = (eor == TRUE) ? LAST_FRAG : 0;
+	uint32_t len = (u_long)(rstrm->out_finger) -
 		(u_long)(rstrm->frag_header) - BYTES_PER_XDR_UNIT;
 
 	*(rstrm->frag_header) = htonl(len | eormask);
@@ -490,9 +489,9 @@ flush_out(RECSTREAM *rstrm, bool_t eor)
 static bool_t  /* knows nothing about records!  Only about input buffers */
 fill_input_buf(RECSTREAM *rstrm)
 {
-	register caddr_t where;
+	caddr_t where;
 	u_int i;
-	register int len;
+	int len;
 
 	where = rstrm->in_base;
 	i = (u_int)((u_long)rstrm->in_boundry % BYTES_PER_XDR_UNIT);
@@ -509,7 +508,7 @@ fill_input_buf(RECSTREAM *rstrm)
 static bool_t  /* knows nothing about records!  Only about input buffers */
 get_input_bytes(RECSTREAM *rstrm, caddr_t addr, int len)
 {
-	register size_t current;
+	size_t current;
 
 	while (len > 0) {
 		current = (size_t)((long)rstrm->in_boundry -
@@ -530,7 +529,7 @@ get_input_bytes(RECSTREAM *rstrm, caddr_t addr, int len)
 
 static bool_t  /* next four bytes of input stream are treated as a header */
 set_input_fragment(rstrm)
-	register RECSTREAM *rstrm;
+	RECSTREAM *rstrm;
 {
 	uint32_t header;
 
@@ -545,7 +544,7 @@ set_input_fragment(rstrm)
 static bool_t  /* consumes input bytes; knows nothing about records! */
 skip_input_bytes(RECSTREAM *rstrm, int32_t cnt)
 {
-	register int current;
+	int current;
 
 	while (cnt > 0) {
 		current = (int)((long)rstrm->in_boundry -
diff --git a/src/lib/rpc/xdr_reference.c b/src/lib/rpc/xdr_reference.c
index eca4648..eab7d2d 100644
--- a/src/lib/rpc/xdr_reference.c
+++ b/src/lib/rpc/xdr_reference.c
@@ -66,8 +66,8 @@ xdr_reference(
 	xdrproc_t proc		/* xdr routine to handle the object */
 	)
 {
-	register caddr_t loc = *pp;
-	register bool_t stat;
+	caddr_t loc = *pp;
+	bool_t stat;
 
 	if (loc == NULL)
 		switch (xdrs->x_op) {
diff --git a/src/plugins/kdb/db2/libdb2/btree/bt_utils.c b/src/plugins/kdb/db2/libdb2/btree/bt_utils.c
index 1a34598..be2f24f 100644
--- a/src/plugins/kdb/db2/libdb2/btree/bt_utils.c
+++ b/src/plugins/kdb/db2/libdb2/btree/bt_utils.c
@@ -216,8 +216,8 @@ int
 __bt_defcmp(a, b)
 	const DBT *a, *b;
 {
-	register size_t len;
-	register u_char *p1, *p2;
+	size_t len;
+	u_char *p1, *p2;
 
 	/*
 	 * XXX
@@ -246,8 +246,8 @@ size_t
 __bt_defpfx(a, b)
 	const DBT *a, *b;
 {
-	register u_char *p1, *p2;
-	register size_t cnt, len;
+	u_char *p1, *p2;
+	size_t cnt, len;
 
 	cnt = 1;
 	len = MIN(a->size, b->size);
diff --git a/src/plugins/kdb/db2/libdb2/recno/rec_search.c b/src/plugins/kdb/db2/libdb2/recno/rec_search.c
index 1504262..244d79f 100644
--- a/src/plugins/kdb/db2/libdb2/recno/rec_search.c
+++ b/src/plugins/kdb/db2/libdb2/recno/rec_search.c
@@ -66,8 +66,8 @@ __rec_search(t, recno, op)
 	recno_t recno;
 	enum SRCHOP op;
 {
-	register indx_t idx;
-	register PAGE *h;
+	indx_t idx;
+	PAGE *h;
 	EPGNO *parent;
 	RINTERNAL *r;
 	db_pgno_t pg;
diff --git a/src/plugins/kdb/db2/libdb2/test/btree.tests/main.c b/src/plugins/kdb/db2/libdb2/test/btree.tests/main.c
index 8281d0e..088f903 100644
--- a/src/plugins/kdb/db2/libdb2/test/btree.tests/main.c
+++ b/src/plugins/kdb/db2/libdb2/test/btree.tests/main.c
@@ -710,7 +710,7 @@ load(db, argv)
 	DB *db;
 	char **argv;
 {
-	register char *p, *t;
+	char *p, *t;
 	FILE *fp;
 	DBT data, key;
 	recno_t cnt;
diff --git a/src/plugins/kdb/db2/libdb2/test/dbtest.c b/src/plugins/kdb/db2/libdb2/test/dbtest.c
index ddb1ab2..5d76b1d 100644
--- a/src/plugins/kdb/db2/libdb2/test/dbtest.c
+++ b/src/plugins/kdb/db2/libdb2/test/dbtest.c
@@ -383,8 +383,8 @@ void
 compare(db1, db2)
 	DBT *db1, *db2;
 {
-	register size_t len;
-	register u_char *p1, *p2;
+	size_t len;
+	u_char *p1, *p2;
 
 	if (db1->size != db2->size) {
 		printf("compare failed: key->data len %lu != data len %lu\n",
diff --git a/src/util/profile/profile_tcl.c b/src/util/profile/profile_tcl.c
index 4f7a86a..eb9950a 100644
--- a/src/util/profile/profile_tcl.c
+++ b/src/util/profile/profile_tcl.c
@@ -544,14 +544,14 @@ SWIG_MangledTypeQueryModule(swig_module_info *start,
   swig_module_info *iter = start;
   do {
     if (iter->size) {
-      register size_t l = 0;
-      register size_t r = iter->size - 1;
+      size_t l = 0;
+      size_t r = iter->size - 1;
       do {
 	/* since l+r >= 0, we can (>> 1) instead (/ 2) */
-	register size_t i = (l + r) >> 1;
+	size_t i = (l + r) >> 1;
 	const char *iname = iter->types[i]->name;
 	if (iname) {
-	  register int compare = strcmp(name, iname);
+	  int compare = strcmp(name, iname);
 	  if (compare == 0) {
 	    return iter->types[i];
 	  } else if (compare < 0) {
@@ -595,7 +595,7 @@ SWIG_TypeQueryModule(swig_module_info *start,
        of the str field (the human readable name) */
     swig_module_info *iter = start;
     do {
-      register size_t i = 0;
+      size_t i = 0;
       for (; i < iter->size; ++i) {
 	if (iter->types[i]->str && (SWIG_TypeEquiv(iter->types[i]->str, name)))
 	  return iter->types[i];
@@ -614,10 +614,10 @@ SWIG_TypeQueryModule(swig_module_info *start,
 SWIGRUNTIME char *
 SWIG_PackData(char *c, void *ptr, size_t sz) {
   static const char hex[17] = "0123456789abcdef";
-  register const unsigned char *u = (unsigned char *) ptr;
-  register const unsigned char *eu =  u + sz;
+  const unsigned char *u = (unsigned char *) ptr;
+  const unsigned char *eu =  u + sz;
   for (; u != eu; ++u) {
-    register unsigned char uu = *u;
+    unsigned char uu = *u;
     *(c++) = hex[(uu & 0xf0) >> 4];
     *(c++) = hex[uu & 0xf];
   }
@@ -629,11 +629,11 @@ SWIG_PackData(char *c, void *ptr, size_t sz) {
 */
 SWIGRUNTIME const char *
 SWIG_UnpackData(const char *c, void *ptr, size_t sz) {
-  register unsigned char *u = (unsigned char *) ptr;
-  register const unsigned char *eu = u + sz;
+  unsigned char *u = (unsigned char *) ptr;
+  const unsigned char *eu = u + sz;
   for (; u != eu; ++u) {
-    register char d = *(c++);
-    register unsigned char uu;
+    char d = *(c++);
+    unsigned char uu;
     if ((d >= '0') && (d <= '9'))
       uu = ((d - '0') << 4);
     else if ((d >= 'a') && (d <= 'f'))
diff --git a/src/util/ss/cmd_tbl.lex.l b/src/util/ss/cmd_tbl.lex.l
index b47085e..af01328 100644
--- a/src/util/ss/cmd_tbl.lex.l
+++ b/src/util/ss/cmd_tbl.lex.l
@@ -65,7 +65,7 @@ static l_end()
 
 static l_quoted_string()
 {
-     register char *p;
+     char *p;
      yylval.dynstr = strdup(yytext+1);
      if (p=strrchr(yylval.dynstr, '"'))
 	  *p='\0';
diff --git a/src/util/ss/error.c b/src/util/ss/error.c
index 6d5f69a..b5768a6 100644
--- a/src/util/ss/error.c
+++ b/src/util/ss/error.c
@@ -36,7 +36,7 @@
 char * ss_name(sci_idx)
     int sci_idx;
 {
-    register ss_data *infop;
+    ss_data *infop;
 
     infop = ss_info(sci_idx);
     if (infop->current_request == (char const *)NULL) {
@@ -52,7 +52,7 @@ char * ss_name(sci_idx)
 
 void ss_error (int sci_idx, long code, const char * fmt, ...)
 {
-    register char *whoami;
+    char *whoami;
     va_list pvar;
     va_start (pvar, fmt);
     whoami = ss_name (sci_idx);
diff --git a/src/util/ss/execute_cmd.c b/src/util/ss/execute_cmd.c
index 6c3855c..cbd697d 100644
--- a/src/util/ss/execute_cmd.c
+++ b/src/util/ss/execute_cmd.c
@@ -53,14 +53,14 @@
  */
 
 static int check_request_table (rqtbl, argc, argv, sci_idx)
-    register ss_request_table *rqtbl;
+    ss_request_table *rqtbl;
     int argc;
     char *argv[];
     int sci_idx;
 {
-    register ss_request_entry *request;
-    register ss_data *info;
-    register char const * const * name;
+    ss_request_entry *request;
+    ss_data *info;
+    char const *const *name;
     char *string = argv[0];
     int i;
 
@@ -106,8 +106,8 @@ static int really_execute_command (sci_idx, argc, argv)
     int argc;
     char **argv[];
 {
-    register ss_request_table **rqtbl;
-    register ss_data *info;
+    ss_request_table **rqtbl;
+    ss_data *info;
 
     info = ss_info(sci_idx);
 
@@ -137,9 +137,9 @@ static int really_execute_command (sci_idx, argc, argv)
 int
 ss_execute_command(sci_idx, argv)
     int sci_idx;
-    register char *argv[];
+    char *argv[];
 {
-    register unsigned int i, argc;
+    unsigned int i, argc;
     char **argp;
     int ret;
 
diff --git a/src/util/ss/help.c b/src/util/ss/help.c
index 4463ad4..6d333c9 100644
--- a/src/util/ss/help.c
+++ b/src/util/ss/help.c
@@ -25,8 +25,8 @@ void ss_help (argc, argv, sci_idx, info_ptr)
     char const *request_name;
     int code;
     int fd, child;
-    register int idx;
-    register ss_data *info;
+    int idx;
+    ss_data *info;
 
     request_name = ss_current_request(sci_idx, &code);
     if (code != 0) {
@@ -102,10 +102,10 @@ got_it:
     char *info_dir;
     int *code_ptr;
     {
-        register ss_data *info;
+        ss_data *info;
         DIR *d;
         int n_dirs;
-        register char **dirs;
+        char **dirs;
 
         info = ss_info(sci_idx);
         if ((info_dir == NULL) || (*info_dir == '\0')) {
@@ -138,8 +138,8 @@ got_it:
     char *info_dir;
     int *code_ptr;
     {
-        register char **i_d;
-        register char **info_dirs;
+        char **i_d;
+        char **info_dirs;
 
         info_dirs = ss_info(sci_idx)->info_dirs;
         for (i_d = info_dirs; *i_d; i_d++) {
diff --git a/src/util/ss/invocation.c b/src/util/ss/invocation.c
index d9c4ea5..378bc3e 100644
--- a/src/util/ss/invocation.c
+++ b/src/util/ss/invocation.c
@@ -43,9 +43,9 @@ int ss_create_invocation(subsystem_name, version_string, info_ptr,
     ss_request_table *request_table_ptr;
     int *code_ptr;
 {
-    register int sci_idx;
-    register ss_data *new_table;
-    register ss_data **table, **tmp;
+    int sci_idx;
+    ss_data *new_table;
+    ss_data **table, **tmp;
 
     *code_ptr = 0;
     table = _ss_table;
@@ -118,7 +118,7 @@ void
 ss_delete_invocation(sci_idx)
     int sci_idx;
 {
-    register ss_data *t;
+    ss_data *t;
     int ignored_code;
 
     t = ss_info(sci_idx);
diff --git a/src/util/ss/list_rqs.c b/src/util/ss/list_rqs.c
index d5b3c87..fe5f149 100644
--- a/src/util/ss/list_rqs.c
+++ b/src/util/ss/list_rqs.c
@@ -31,10 +31,10 @@ ss_list_requests(argc, argv, sci_idx, info_ptr)
     char *info_ptr;
 #endif
 {
-    register ss_request_entry *entry;
-    register char const * const *name;
-    register int spacing;
-    register ss_request_table **table;
+    ss_request_entry *entry;
+    char const *const *name;
+    int spacing;
+    ss_request_table **table;
 
     char buffer[BUFSIZ];
     FILE *output;
@@ -90,7 +90,7 @@ ss_list_requests(argc, argv, sci_idx, info_ptr)
                 continue;
             buffer[sizeof(buffer) - 1] = '\0';
             for (name = entry->command_names; *name; name++) {
-                register int len = strlen(*name);
+                int len = strlen(*name);
                 strncat(buffer, *name, sizeof(buffer) - 1 - strlen(buffer));
                 spacing += len + 2;
                 if (name[1]) {
diff --git a/src/util/ss/listen.c b/src/util/ss/listen.c
index 75b9044..c99caa3 100644
--- a/src/util/ss/listen.c
+++ b/src/util/ss/listen.c
@@ -61,8 +61,8 @@ static RETSIGTYPE listen_int_handler(signo)
 int ss_listen (sci_idx)
     int sci_idx;
 {
-    register char *cp;
-    register ss_data *info;
+    char *cp;
+    ss_data *info;
     char *input;
     int code;
     jmp_buf old_jmpb;
@@ -71,7 +71,7 @@ int ss_listen (sci_idx)
     struct sigaction isig, csig, nsig, osig;
     sigset_t nmask, omask;
 #else
-    register RETSIGTYPE (*sig_cont)();
+    RETSIGTYPE (*sig_cont)();
     RETSIGTYPE (*sig_int)(), (*old_sig_cont)();
     int mask;
 #endif
@@ -136,7 +136,7 @@ int ss_listen (sci_idx)
 
         code = ss_execute_line (sci_idx, input);
         if (code == SS_ET_COMMAND_NOT_FOUND) {
-            register char *c = input;
+            char *c = input;
             while (*c == ' ' || *c == '\t')
                 c++;
             cp = strchr (c, ' ');
diff --git a/src/util/ss/options.c b/src/util/ss/options.c
index c3452f9..807f8e6 100644
--- a/src/util/ss/options.c
+++ b/src/util/ss/options.c
@@ -23,9 +23,9 @@ static struct option options[] = {
 
 long
 flag_val(string)
-    register char *string;
+    char *string;
 {
-    register struct option *opt;
+    struct option *opt;
     for (opt = options; opt->text; opt++)
         if (!strcmp(opt->text, string))
             return(opt->value);
diff --git a/src/util/ss/pager.c b/src/util/ss/pager.c
index ae023b5..3e47ed3 100644
--- a/src/util/ss/pager.c
+++ b/src/util/ss/pager.c
@@ -102,7 +102,7 @@ void ss_page_stdin()
     {
         /* minimal recovery if pager program isn't found */
         char buf[80];
-        register int n;
+        int n;
         while ((n = read(0, buf, 80)) > 0)
             write(1, buf, (unsigned) n);
     }
diff --git a/src/util/ss/parse.c b/src/util/ss/parse.c
index 456b147..78a831b 100644
--- a/src/util/ss/parse.c
+++ b/src/util/ss/parse.c
@@ -55,13 +55,13 @@ enum parse_mode { WHITESPACE, TOKEN, QUOTED_STRING };
 
 char **ss_parse (sci_idx, line_ptr, argc_ptr)
     int sci_idx;
-    register char *line_ptr;
+    char *line_ptr;
     int *argc_ptr;
 {
-    register char **argv, *cp;
+    char **argv, *cp;
     char **newargv;
-    register int argc;
-    register enum parse_mode parse_mode;
+    int argc;
+    enum parse_mode parse_mode;
 
     argv = (char **) malloc (sizeof(char *));
     if (argv == (char **)NULL) {
diff --git a/src/util/ss/request_tbl.c b/src/util/ss/request_tbl.c
index 7721a5f..03cde1b 100644
--- a/src/util/ss/request_tbl.c
+++ b/src/util/ss/request_tbl.c
@@ -17,8 +17,8 @@ ss_add_request_table(sci_idx, rqtbl_ptr, position, code_ptr)
     int position;           /* 1 -> becomes second... */
     int *code_ptr;
 {
-    register ss_data *info;
-    register int i, size;
+    ss_data *info;
+    int i, size;
 
     info = ss_info(sci_idx);
     for (size=0; info->rqt_tables[size] != (ssrt *)NULL; size++)
@@ -49,8 +49,8 @@ ss_delete_request_table(sci_idx, rqtbl_ptr, code_ptr)
     ssrt *rqtbl_ptr;
     int *code_ptr;
 {
-    register ss_data *info;
-    register ssrt **rt1, **rt2;
+    ss_data *info;
+    ssrt **rt1, **rt2;
 
     *code_ptr = SS_ET_TABLE_NOT_FOUND;
     info = ss_info(sci_idx);
diff --git a/src/util/ss/requests.c b/src/util/ss/requests.c
index 3e62f97..aa6752f 100644
--- a/src/util/ss/requests.c
+++ b/src/util/ss/requests.c
@@ -16,7 +16,7 @@
  */
 DECLARE(ss_self_identify)
 {
-    register ss_data *info = ss_info(sci_idx);
+    ss_data *info = ss_info(sci_idx);
     printf("%s version %s\n", info->subsystem_name,
            info->subsystem_version);
 }
diff --git a/src/util/ss/utils.c b/src/util/ss/utils.c
index 3b1f658..675de7c 100644
--- a/src/util/ss/utils.c
+++ b/src/util/ss/utils.c
@@ -78,7 +78,7 @@ gensym(name)
 
 /* concatenate three strings and return the result */
 char *str_concat3(a, b, c)
-    register char *a, *b, *c;
+    char *a, *b, *c;
 {
     char *result;
 
@@ -88,9 +88,9 @@ char *str_concat3(a, b, c)
 
 /* return copy of string enclosed in double-quotes */
 char *quote(string)
-    register char *string;
+    char *string;
 {
-    register char *result;
+    char *result;
 
     asprintf(&result, "\"%s\"", string);
     return(result);
@@ -99,10 +99,10 @@ char *quote(string)
 #ifndef HAVE_STRDUP
 /* make duplicate of string and return pointer */
 char *strdup(s)
-    register char *s;
+    char *s;
 {
-    register int len = strlen(s) + 1;
-    register char *new;
+    int len = strlen(s) + 1;
+    char *new;
     new = malloc(len);
     strncpy(new, s, len);
     return(new);
diff --git a/src/util/support/mkstemp.c b/src/util/support/mkstemp.c
index 9ef586a..285757f 100644
--- a/src/util/support/mkstemp.c
+++ b/src/util/support/mkstemp.c
@@ -75,9 +75,9 @@ int mkstemp(path)
 static int
 _gettemp(path, doopen)
 	char *path;
-	register int *doopen;
+	int *doopen;
 {
-	register char *start, *trv;
+	char *start, *trv;
 	struct stat sbuf;
 	u_int pid;
 
diff --git a/src/windows/leashdll/timesync.c b/src/windows/leashdll/timesync.c
index 15b6d7d..b6b4481 100644
--- a/src/windows/leashdll/timesync.c
+++ b/src/windows/leashdll/timesync.c
@@ -216,8 +216,8 @@ int ProcessTimeSync(char *hostname, int Port, char *tmpstr)
 {
     char                buffer[512];
     int                 cc;
-    register long       *nettime;
-    register int        s;
+    long                *nettime;
+    int                 s;
     long                hosttime;
     struct hostent      *host;
     struct              timeval tv;


More information about the cvs-krb5 mailing list