aboutsummaryrefslogtreecommitdiff
path: root/security/krb5-115
diff options
context:
space:
mode:
authorCy Schubert <cy@FreeBSD.org>2018-06-19 13:38:35 +0000
committerCy Schubert <cy@FreeBSD.org>2018-06-19 13:38:35 +0000
commit291fbd2adc866b02414e4b84c8b747c6d9030a3c (patch)
treebd41f5068aa845445b9190e857fb3fa9f415fddc /security/krb5-115
parent8b3598ab7d67ea4c34136d62de4d85c1071d9101 (diff)
downloadports-291fbd2adc866b02414e4b84c8b747c6d9030a3c.tar.gz
ports-291fbd2adc866b02414e4b84c8b747c6d9030a3c.zip
Notes
Diffstat (limited to 'security/krb5-115')
-rw-r--r--security/krb5-115/Makefile2
-rw-r--r--security/krb5-115/files/patch-MIT-git-beeb2828945a41d86488e391ce440bacee0ec8a43211
-rw-r--r--security/krb5-115/files/patch-include_krb5_krb5.hin74
3 files changed, 3212 insertions, 75 deletions
diff --git a/security/krb5-115/Makefile b/security/krb5-115/Makefile
index 883de9f6cbf8..de85b8c359d4 100644
--- a/security/krb5-115/Makefile
+++ b/security/krb5-115/Makefile
@@ -3,7 +3,7 @@
PORTNAME= krb5
PORTVERSION= 1.15.3
-PORTREVISION= 3
+PORTREVISION= 4
CATEGORIES= security
MASTER_SITES= http://web.mit.edu/kerberos/dist/${PORTNAME}/${PORTVERSION:C/^[0-9]*\.[0-9]*/&X/:C/X\.[0-9]*$//:C/X//}/
.if !defined(MASTERDIR)
diff --git a/security/krb5-115/files/patch-MIT-git-beeb2828945a41d86488e391ce440bacee0ec8a4 b/security/krb5-115/files/patch-MIT-git-beeb2828945a41d86488e391ce440bacee0ec8a4
new file mode 100644
index 000000000000..3316df1e1bb5
--- /dev/null
+++ b/security/krb5-115/files/patch-MIT-git-beeb2828945a41d86488e391ce440bacee0ec8a4
@@ -0,0 +1,3211 @@
+diff --git appl/user_user/client.c b/src/appl/user_user/client.c
+index 28901a637..34d852202 100644
+--- appl/user_user/client.c
++++ 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 clients/ksu/main.c b/src/clients/ksu/main.c
+index 6fa74a536..d9596d948 100644
+--- clients/ksu/main.c
++++ 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 clients/ksu/setenv.c b/src/clients/ksu/setenv.c
+index a7895c6b4..c7bd369bc 100644
+--- clients/ksu/setenv.c
++++ 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 include/gssrpc/clnt.h b/src/include/gssrpc/clnt.h
+index 40f7c69a4..fc6836cb5 100644
+--- include/gssrpc/clnt.h
++++ 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 include/krb5/krb5.hin b/src/include/krb5/krb5.hin
+index 6d99de42d..384bb838f 100644
+--- include/krb5/krb5.hin
++++ 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 kadmin/cli/getdate.y b/src/kadmin/cli/getdate.y
+index 059f112da..cb039acb3 100644
+--- kadmin/cli/getdate.y
++++ 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 kadmin/dbutil/strtok.c b/src/kadmin/dbutil/strtok.c
+index 0640c747e..dee466aea 100644
+--- kadmin/dbutil/strtok.c
++++ 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 kadmin/server/ipropd_svc.c b/src/kadmin/server/ipropd_svc.c
+index e6e190136..6a21fe6de 100644
+--- kadmin/server/ipropd_svc.c
++++ 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 kadmin/server/kadm_rpc_svc.c b/src/kadmin/server/kadm_rpc_svc.c
+index e43ca0d57..41fc88ac8 100644
+--- kadmin/server/kadm_rpc_svc.c
++++ 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 kdc/kdc_util.c b/src/kdc/kdc_util.c
+index 13111215d..21af360cd 100644
+--- kdc/kdc_util.c
++++ 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 kdc/tgs_policy.c b/src/kdc/tgs_policy.c
+index 33cfbcd81..4c08e44e6 100644
+--- kdc/tgs_policy.c
++++ 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 lib/apputils/net-server.c b/src/lib/apputils/net-server.c
+index a40da927e..f0955c503 100644
+--- lib/apputils/net-server.c
++++ 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 lib/crypto/builtin/des/destest.c b/src/lib/crypto/builtin/des/destest.c
+index dd2f68ec4..e51351c5e 100644
+--- lib/crypto/builtin/des/destest.c
++++ 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 lib/crypto/builtin/des/doc/libdes.doc b/src/lib/crypto/builtin/des/doc/libdes.doc
+index 70f9f336a..19c03c1d3 100644
+--- lib/crypto/builtin/des/doc/libdes.doc
++++ 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 lib/crypto/builtin/des/f_cksum.c b/src/lib/crypto/builtin/des/f_cksum.c
+index 4492ce6df..cb482b009 100644
+--- lib/crypto/builtin/des/f_cksum.c
++++ 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 lib/crypto/builtin/des/f_sched.c b/src/lib/crypto/builtin/des/f_sched.c
+index 89d820f45..666a510fb 100644
+--- lib/crypto/builtin/des/f_sched.c
++++ 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 lib/crypto/builtin/des/f_tables.h b/src/lib/crypto/builtin/des/f_tables.h
+index a99eb0a14..fc91b566c 100644
+--- lib/crypto/builtin/des/f_tables.h
++++ 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 lib/crypto/builtin/des/t_verify.c b/src/lib/crypto/builtin/des/t_verify.c
+index 1f3239fed..be0e8adc7 100644
+--- lib/crypto/builtin/des/t_verify.c
++++ 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 lib/crypto/builtin/md4/md4.c b/src/lib/crypto/builtin/md4/md4.c
+index 27d2ad514..f7c16caaa 100644
+--- lib/crypto/builtin/md4/md4.c
++++ 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 lib/crypto/builtin/md5/md5.c b/src/lib/crypto/builtin/md5/md5.c
+index 4a169065c..a5e0c82db 100644
+--- lib/crypto/builtin/md5/md5.c
++++ 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 lib/crypto/krb/crc32.c b/src/lib/crypto/krb/crc32.c
+index d3b1b7a13..11fe312da 100644
+--- lib/crypto/krb/crc32.c
++++ 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 lib/crypto/krb/keyblocks.c b/src/lib/crypto/krb/keyblocks.c
+index 98696f508..1126d0a0a 100644
+--- lib/crypto/krb/keyblocks.c
++++ 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 lib/kdb/iprop_xdr.c b/src/lib/kdb/iprop_xdr.c
+index 8bf2c89e6..b866fdf7b 100644
+--- lib/kdb/iprop_xdr.c
++++ 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 lib/krb5/ccache/cc_mslsa.c b/src/lib/krb5/ccache/cc_mslsa.c
+index 030098360..0d00c86d4 100644
+--- lib/krb5/ccache/cc_mslsa.c
++++ 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 lib/krb5/ccache/ccapi/stdcc_util.c b/src/lib/krb5/ccache/ccapi/stdcc_util.c
+index 6092ee432..62d847c18 100644
+--- lib/krb5/ccache/ccapi/stdcc_util.c
++++ 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 lib/krb5/keytab/kt_file.c b/src/lib/krb5/keytab/kt_file.c
+index 091f2c43f..89cb68680 100644
+--- lib/krb5/keytab/kt_file.c
++++ 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 lib/krb5/krb/addr_order.c b/src/lib/krb5/krb/addr_order.c
+index e9ea0ba8c..39c9e1e69 100644
+--- lib/krb5/krb/addr_order.c
++++ 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 lib/krb5/krb/authdata.c b/src/lib/krb5/krb/authdata.c
+index abb2ab9e2..8fd1f0538 100644
+--- lib/krb5/krb/authdata.c
++++ 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 lib/krb5/krb/conv_princ.c b/src/lib/krb5/krb/conv_princ.c
+index c33c67dda..78fc2f4c6 100644
+--- lib/krb5/krb/conv_princ.c
++++ 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 lib/krb5/krb/copy_addrs.c b/src/lib/krb5/krb/copy_addrs.c
+index 494bccf92..9c9bc7ba3 100644
+--- lib/krb5/krb/copy_addrs.c
++++ 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 lib/krb5/krb/copy_auth.c b/src/lib/krb5/krb/copy_auth.c
+index 06a06450c..ffb7ee9c6 100644
+--- lib/krb5/krb/copy_auth.c
++++ 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 lib/krb5/krb/copy_princ.c b/src/lib/krb5/krb/copy_princ.c
+index 0d0e6a004..81b338124 100644
+--- lib/krb5/krb/copy_princ.c
++++ 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 lib/krb5/krb/decrypt_tk.c b/src/lib/krb5/krb/decrypt_tk.c
+index 51f9e8fdf..e848554e2 100644
+--- lib/krb5/krb/decrypt_tk.c
++++ 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 lib/krb5/krb/encrypt_tk.c b/src/lib/krb5/krb/encrypt_tk.c
+index 7fcd0ffc8..13a774f07 100644
+--- lib/krb5/krb/encrypt_tk.c
++++ 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 lib/krb5/krb/kfree.c b/src/lib/krb5/krb/kfree.c
+index 71e7fcad0..ab2409f17 100644
+--- lib/krb5/krb/kfree.c
++++ 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 lib/krb5/krb/pr_to_salt.c b/src/lib/krb5/krb/pr_to_salt.c
+index 00d0c734f..7bcb62769 100644
+--- lib/krb5/krb/pr_to_salt.c
++++ 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 lib/krb5/krb/unparse.c b/src/lib/krb5/krb/unparse.c
+index 5bb64d00a..6a54b222e 100644
+--- lib/krb5/krb/unparse.c
++++ 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 lib/krb5/krb/walk_rtree.c b/src/lib/krb5/krb/walk_rtree.c
+index f4e8e35f5..4074fe888 100644
+--- lib/krb5/krb/walk_rtree.c
++++ 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 lib/krb5/os/full_ipadr.c b/src/lib/krb5/os/full_ipadr.c
+index 0863caba5..61fc74b61 100644
+--- lib/krb5/os/full_ipadr.c
++++ 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 lib/krb5/os/mk_faddr.c b/src/lib/krb5/os/mk_faddr.c
+index 2577df301..c7a6ddd52 100644
+--- lib/krb5/os/mk_faddr.c
++++ 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 lib/krb5/os/net_read.c b/src/lib/krb5/os/net_read.c
+index 7e5e95412..64a462269 100644
+--- lib/krb5/os/net_read.c
++++ 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 lib/krb5/os/port2ip.c b/src/lib/krb5/os/port2ip.c
+index 905d60f19..94c0430f1 100644
+--- lib/krb5/os/port2ip.c
++++ 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 lib/krb5/os/timeofday.c b/src/lib/krb5/os/timeofday.c
+index d4e36b1c7..82fde9250 100644
+--- lib/krb5/os/timeofday.c
++++ 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 lib/rpc/auth_none.c b/src/lib/rpc/auth_none.c
+index de8d6d048..85ddbf7b4 100644
+--- lib/rpc/auth_none.c
++++ 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 lib/rpc/auth_unix.c b/src/lib/rpc/auth_unix.c
+index 6cb998dc5..7853efa39 100644
+--- lib/rpc/auth_unix.c
++++ 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 lib/rpc/authunix_prot.c b/src/lib/rpc/authunix_prot.c
+index 5bc5172ef..512d5a51b 100644
+--- lib/rpc/authunix_prot.c
++++ 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 lib/rpc/clnt_raw.c b/src/lib/rpc/clnt_raw.c
+index 1d7fc6260..515086bb5 100644
+--- lib/rpc/clnt_raw.c
++++ 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 lib/rpc/clnt_simple.c b/src/lib/rpc/clnt_simple.c
+index 4ec99edd8..39186e583 100644
+--- lib/rpc/clnt_simple.c
++++ 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 lib/rpc/clnt_tcp.c b/src/lib/rpc/clnt_tcp.c
+index 02056fd40..87761906c 100644
+--- lib/rpc/clnt_tcp.c
++++ 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 lib/rpc/clnt_udp.c b/src/lib/rpc/clnt_udp.c
+index 7a5191659..3d7a459d1 100644
+--- lib/rpc/clnt_udp.c
++++ 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 lib/rpc/getrpcent.c b/src/lib/rpc/getrpcent.c
+index db03daed6..ad6793f08 100644
+--- lib/rpc/getrpcent.c
++++ 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 lib/rpc/pmap_clnt.c b/src/lib/rpc/pmap_clnt.c
+index cda40fb29..952a25145 100644
+--- lib/rpc/pmap_clnt.c
++++ 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 lib/rpc/pmap_getmaps.c b/src/lib/rpc/pmap_getmaps.c
+index 7790a3af1..b8a9cecf7 100644
+--- lib/rpc/pmap_getmaps.c
++++ 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 lib/rpc/pmap_getport.c b/src/lib/rpc/pmap_getport.c
+index 2fdb73ceb..66635a103 100644
+--- lib/rpc/pmap_getport.c
++++ 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 lib/rpc/pmap_prot2.c b/src/lib/rpc/pmap_prot2.c
+index 7fd7d3ef0..aeccac663 100644
+--- lib/rpc/pmap_prot2.c
++++ 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 lib/rpc/pmap_rmt.c b/src/lib/rpc/pmap_rmt.c
+index 4829e3ff0..8c7e30c21 100644
+--- lib/rpc/pmap_rmt.c
++++ 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 lib/rpc/rpc_callmsg.c b/src/lib/rpc/rpc_callmsg.c
+index 6752524e5..27d298fa6 100644
+--- lib/rpc/rpc_callmsg.c
++++ 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 lib/rpc/svc.c b/src/lib/rpc/svc.c
+index e923ac0be..c171ecc2a 100644
+--- lib/rpc/svc.c
++++ 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 lib/rpc/svc_auth.c b/src/lib/rpc/svc_auth.c
+index 5fedef7d7..c1967bc9f 100644
+--- lib/rpc/svc_auth.c
++++ 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 lib/rpc/svc_auth_gssapi.c b/src/lib/rpc/svc_auth_gssapi.c
+index f3b3e35b8..182262e9b 100644
+--- lib/rpc/svc_auth_gssapi.c
++++ 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 lib/rpc/svc_auth_unix.c b/src/lib/rpc/svc_auth_unix.c
+index a4b87d8ff..ee3057ed9 100644
+--- lib/rpc/svc_auth_unix.c
++++ 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 lib/rpc/svc_raw.c b/src/lib/rpc/svc_raw.c
+index ef5f3d3d7..dba6c29d5 100644
+--- lib/rpc/svc_raw.c
++++ 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 lib/rpc/svc_tcp.c b/src/lib/rpc/svc_tcp.c
+index d78cf55a7..54ce70ed1 100644
+--- lib/rpc/svc_tcp.c
++++ 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 lib/rpc/svc_udp.c b/src/lib/rpc/svc_udp.c
+index f70bf0146..d3140df6b 100644
+--- lib/rpc/svc_udp.c
++++ 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 lib/rpc/unit-test/rpc_test_svc.c b/src/lib/rpc/unit-test/rpc_test_svc.c
+index 88939f0a9..c54c0813d 100644
+--- lib/rpc/unit-test/rpc_test_svc.c
++++ 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 lib/rpc/unit-test/server.c b/src/lib/rpc/unit-test/server.c
+index 745155805..13e99bb06 100644
+--- lib/rpc/unit-test/server.c
++++ 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 lib/rpc/xdr.c b/src/lib/rpc/xdr.c
+index 2b7c17be3..8c14ddc68 100644
+--- lib/rpc/xdr.c
++++ 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 lib/rpc/xdr_alloc.c b/src/lib/rpc/xdr_alloc.c
+index 8c58cffca..f39210e15 100644
+--- lib/rpc/xdr_alloc.c
++++ 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 lib/rpc/xdr_array.c b/src/lib/rpc/xdr_array.c
+index c3d16fb53..aeaa7f2bb 100644
+--- lib/rpc/xdr_array.c
++++ 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 lib/rpc/xdr_float.c b/src/lib/rpc/xdr_float.c
+index 5b6e9cafb..82059b7ce 100644
+--- lib/rpc/xdr_float.c
++++ 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 lib/rpc/xdr_mem.c b/src/lib/rpc/xdr_mem.c
+index f3eb047b1..8d3f12017 100644
+--- lib/rpc/xdr_mem.c
++++ 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 lib/rpc/xdr_rec.c b/src/lib/rpc/xdr_rec.c
+index 058788257..28894f38b 100644
+--- lib/rpc/xdr_rec.c
++++ 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 lib/rpc/xdr_reference.c b/src/lib/rpc/xdr_reference.c
+index eca4648ec..eab7d2d5f 100644
+--- lib/rpc/xdr_reference.c
++++ 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 plugins/kdb/db2/libdb2/btree/bt_utils.c b/src/plugins/kdb/db2/libdb2/btree/bt_utils.c
+index 1a34598ad..be2f24f21 100644
+--- plugins/kdb/db2/libdb2/btree/bt_utils.c
++++ 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 plugins/kdb/db2/libdb2/recno/rec_search.c b/src/plugins/kdb/db2/libdb2/recno/rec_search.c
+index 15042627d..244d79f36 100644
+--- plugins/kdb/db2/libdb2/recno/rec_search.c
++++ 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 plugins/kdb/db2/libdb2/test/btree.tests/main.c b/src/plugins/kdb/db2/libdb2/test/btree.tests/main.c
+index 8281d0e77..088f90323 100644
+--- plugins/kdb/db2/libdb2/test/btree.tests/main.c
++++ 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 plugins/kdb/db2/libdb2/test/dbtest.c b/src/plugins/kdb/db2/libdb2/test/dbtest.c
+index ddb1ab246..5d76b1ddf 100644
+--- plugins/kdb/db2/libdb2/test/dbtest.c
++++ 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 util/profile/profile_tcl.c b/src/util/profile/profile_tcl.c
+index 4f7a86a57..eb9950a10 100644
+--- util/profile/profile_tcl.c
++++ 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 util/ss/cmd_tbl.lex.l b/src/util/ss/cmd_tbl.lex.l
+index b47085e98..af0132842 100644
+--- util/ss/cmd_tbl.lex.l
++++ 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 util/ss/error.c b/src/util/ss/error.c
+index 6d5f69a7b..b5768a62b 100644
+--- util/ss/error.c
++++ 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 util/ss/execute_cmd.c b/src/util/ss/execute_cmd.c
+index 6c3855c28..cbd697d5c 100644
+--- util/ss/execute_cmd.c
++++ 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 util/ss/help.c b/src/util/ss/help.c
+index 4463ad45f..6d333c971 100644
+--- util/ss/help.c
++++ 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 util/ss/invocation.c b/src/util/ss/invocation.c
+index d9c4ea5fa..378bc3e92 100644
+--- util/ss/invocation.c
++++ 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 util/ss/list_rqs.c b/src/util/ss/list_rqs.c
+index d5b3c877b..fe5f14911 100644
+--- util/ss/list_rqs.c
++++ 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 util/ss/listen.c b/src/util/ss/listen.c
+index 75b904490..c99caa34b 100644
+--- util/ss/listen.c
++++ 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 util/ss/options.c b/src/util/ss/options.c
+index c3452f9e1..807f8e670 100644
+--- util/ss/options.c
++++ 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 util/ss/pager.c b/src/util/ss/pager.c
+index ae023b594..3e47ed399 100644
+--- util/ss/pager.c
++++ 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 util/ss/parse.c b/src/util/ss/parse.c
+index 456b14743..78a831bf3 100644
+--- util/ss/parse.c
++++ 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 util/ss/request_tbl.c b/src/util/ss/request_tbl.c
+index 7721a5f23..03cde1b7d 100644
+--- util/ss/request_tbl.c
++++ 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 util/ss/requests.c b/src/util/ss/requests.c
+index 3e62f970c..aa6752fa1 100644
+--- util/ss/requests.c
++++ 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 util/ss/utils.c b/src/util/ss/utils.c
+index 3b1f6582a..675de7cb1 100644
+--- util/ss/utils.c
++++ 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 util/support/mkstemp.c b/src/util/support/mkstemp.c
+index 9ef586a09..285757f2a 100644
+--- util/support/mkstemp.c
++++ 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 windows/leashdll/timesync.c b/src/windows/leashdll/timesync.c
+index 15b6d7df8..b6b448123 100644
+--- windows/leashdll/timesync.c
++++ 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;
diff --git a/security/krb5-115/files/patch-include_krb5_krb5.hin b/security/krb5-115/files/patch-include_krb5_krb5.hin
deleted file mode 100644
index 48c31ce0dcf3..000000000000
--- a/security/krb5-115/files/patch-include_krb5_krb5.hin
+++ /dev/null
@@ -1,74 +0,0 @@
---- include/krb5/krb5.hin.orig 2018-05-03 11:24:57.000000000 -0700
-+++ include/krb5/krb5.hin 2018-06-18 22:52:23.012932000 -0700
-@@ -3550,7 +3550,7 @@
- */
- 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.
-@@ -4373,7 +4373,7 @@
- */
- 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 */
-@@ -4714,7 +4714,7 @@
- * 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.
-@@ -4747,7 +4747,7 @@
- * 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.
-@@ -4758,7 +4758,7 @@
- * 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.
-@@ -4769,7 +4769,7 @@
- * 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.
-@@ -4780,7 +4780,7 @@
- * 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.
-@@ -4896,7 +4896,7 @@
- * 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.