From 85d8bdac7439966a64709724d20dfd487911f7bc Mon Sep 17 00:00:00 2001 From: Marc Dionne Date: Wed, 18 Mar 2009 13:41:07 +0000 Subject: [PATCH] linux-warning-reduction-20090318 LICENSE IPL10 FIXES 119434 cleanup warnings in linux kernel builds --- src/afs/LINUX/osi_file.c | 2 +- src/afs/LINUX/osi_groups.c | 2 ++ src/afs/LINUX/osi_machdep.h | 2 +- src/afs/LINUX/osi_probe.c | 6 +++--- src/afs/LINUX/osi_proc.c | 7 +++---- src/afs/VNOPS/afs_vnop_flock.c | 2 +- src/afs/VNOPS/afs_vnop_lookup.c | 3 +++ src/afs/VNOPS/afs_vnop_remove.c | 2 +- src/afs/afs_call.c | 4 +++- src/afs/afs_daemons.c | 1 - src/afs/afs_dcache.c | 2 ++ src/afs/afs_init.c | 2 +- src/afs/afs_osi_alloc.c | 4 ++-- src/afs/afs_osi_gcpags.c | 2 +- src/afs/afs_osi_pag.c | 6 +++++- src/afs/afs_osi_vm.c | 2 ++ src/afs/afs_pioctl.c | 2 +- src/afs/afs_prototypes.h | 4 ++-- src/afs/afs_server.c | 2 +- src/afs/afs_stats.h | 2 +- src/afs/afs_user.c | 2 +- src/afs/afs_vcache.c | 3 ++- src/config/stds.h | 2 +- src/rx/LINUX/rx_kmutex.c | 6 +++--- src/rx/LINUX/rx_knet.c | 2 -- src/rx/rx.c | 3 ++- src/rxkad/domestic/crypt_conn.c | 4 ++-- src/rxkad/domestic/fcrypt.c | 4 ++-- src/rxkad/rxkad_common.c | 22 +++++++++++----------- src/rxkad/rxkad_prototypes.h | 4 ++-- 30 files changed, 62 insertions(+), 49 deletions(-) diff --git a/src/afs/LINUX/osi_file.c b/src/afs/LINUX/osi_file.c index 869ed80..5c80978 100644 --- a/src/afs/LINUX/osi_file.c +++ b/src/afs/LINUX/osi_file.c @@ -64,7 +64,7 @@ osi_UFSOpen(afs_int32 ainode) AFS_GUNLOCK(); if (!afile) { osi_Panic("osi_UFSOpen: Failed to allocate %d bytes for osi_file.\n", - sizeof(struct osi_file)); + (int)sizeof(struct osi_file)); } memset(afile, 0, sizeof(struct osi_file)); #if defined(HAVE_IGET) diff --git a/src/afs/LINUX/osi_groups.c b/src/afs/LINUX/osi_groups.c index 1622ec6..ebbdb7b 100644 --- a/src/afs/LINUX/osi_groups.c +++ b/src/afs/LINUX/osi_groups.c @@ -166,7 +166,9 @@ __setpag(cred_t **cr, afs_uint32 pagvalue, afs_uint32 *newpag, int change_parent) { struct group_info *group_info; +#ifndef AFS_LINUX26_ONEGROUP_ENV gid_t g0, g1; +#endif struct group_info *tmp; int i; #ifdef AFS_LINUX26_ONEGROUP_ENV diff --git a/src/afs/LINUX/osi_machdep.h b/src/afs/LINUX/osi_machdep.h index 11e7030..7335c0b 100644 --- a/src/afs/LINUX/osi_machdep.h +++ b/src/afs/LINUX/osi_machdep.h @@ -130,7 +130,7 @@ static inline time_t osi_Time(void) { #undef TO_USER_SPACE #undef TO_KERNEL_SPACE #endif -#define KERNEL_SPACE_DECL mm_segment_t _fs_space_decl +#define KERNEL_SPACE_DECL mm_segment_t _fs_space_decl={0} #define TO_USER_SPACE() { _fs_space_decl = get_fs(); set_fs(get_ds()); } #define TO_KERNEL_SPACE() set_fs(_fs_space_decl) diff --git a/src/afs/LINUX/osi_probe.c b/src/afs/LINUX/osi_probe.c index 91b95f6..597ca90 100644 --- a/src/afs/LINUX/osi_probe.c +++ b/src/afs/LINUX/osi_probe.c @@ -55,6 +55,9 @@ #if defined(EXPORTED_INIT_MM) #ifdef AFS_LINUX24_ENV #include /* early to avoid printf->printk mapping */ +#ifdef AFS_LINUX26_ENV +#include /* for scsi_command_size */ +#endif #ifndef OSI_PROBE_STANDALONE #include "afs/sysincludes.h" #include "afsincludes.h" @@ -68,9 +71,6 @@ #include #include #include -#ifdef AFS_LINUX26_ENV -#include /* for scsi_command_size */ -#endif #if defined(AFS_PPC64_LINUX26_ENV) #include diff --git a/src/afs/LINUX/osi_proc.c b/src/afs/LINUX/osi_proc.c index cf5497c..3f340de 100644 --- a/src/afs/LINUX/osi_proc.c +++ b/src/afs/LINUX/osi_proc.c @@ -18,6 +18,9 @@ RCSID ("$Header$"); #include /* early to avoid printf->printk mapping */ +#ifdef HAVE_KERNEL_LINUX_SEQ_FILE_H +#include +#endif #include "afs/sysincludes.h" #include "afsincludes.h" #include "afs/nfsclient.h" @@ -34,10 +37,6 @@ RCSID #include #include -#ifdef HAVE_KERNEL_LINUX_SEQ_FILE_H -#include -#endif - struct proc_dir_entry *openafs_procfs; #ifdef HAVE_KERNEL_LINUX_SEQ_FILE_H diff --git a/src/afs/VNOPS/afs_vnop_flock.c b/src/afs/VNOPS/afs_vnop_flock.c index d4e855f..5a4436c 100644 --- a/src/afs/VNOPS/afs_vnop_flock.c +++ b/src/afs/VNOPS/afs_vnop_flock.c @@ -570,7 +570,7 @@ int afs_lockctl(struct vcache * avc, struct AFS_FLOCK * af, int acmd, #endif /* Java VMs ask for l_len=(long)-1 regardless of OS/CPU; bottom 32 bits * sometimes get masked off by OS */ - if ((sizeof(af->l_len) == 8) && (af->l_len == 0x7ffffffffffffffe)) + if ((sizeof(af->l_len) == 8) && (af->l_len == 0x7ffffffffffffffeLL)) af->l_len = 0; /* next line makes byte range locks always succeed, * even when they should block */ diff --git a/src/afs/VNOPS/afs_vnop_lookup.c b/src/afs/VNOPS/afs_vnop_lookup.c index 4e03276..2c2bd3c 100644 --- a/src/afs/VNOPS/afs_vnop_lookup.c +++ b/src/afs/VNOPS/afs_vnop_lookup.c @@ -669,6 +669,9 @@ afs_DoBulkStat(struct vcache *adp, long dirCookie, struct vrequest *areqp) int flagIndex = 0; /* First file with bulk fetch flag set */ int inlinebulk = 0; /* Did we use InlineBulk RPC or not? */ XSTATS_DECLS; + dotdot.Cell = 0; + dotdot.Fid.Unique = 0; + dotdot.Fid.Vnode = 0; #ifdef AFS_DARWIN80_ENV panic("bulkstatus doesn't work on AFS_DARWIN80_ENV. don't call it"); #endif diff --git a/src/afs/VNOPS/afs_vnop_remove.c b/src/afs/VNOPS/afs_vnop_remove.c index 14ee053..ec19492 100644 --- a/src/afs/VNOPS/afs_vnop_remove.c +++ b/src/afs/VNOPS/afs_vnop_remove.c @@ -436,7 +436,7 @@ afs_remove(OSI_VC_DECL(adp), char *aname, struct AFS_UCRED *acred) if (!code) { struct VenusFid *oldmvid = NULL; if (tvc->mvid) - oldmvid = tvc->mvid; + oldmvid = (char *)tvc->mvid; tvc->mvid = (struct VenusFid *)unlname; if (oldmvid) osi_FreeSmallSpace(oldmvid); diff --git a/src/afs/afs_call.c b/src/afs/afs_call.c index 97c9655..bccb764 100644 --- a/src/afs/afs_call.c +++ b/src/afs/afs_call.c @@ -414,8 +414,10 @@ afs_DaemonOp(long parm, long parm2, long parm3, long parm4, long parm5, { int code; DECLARE_COMPLETION(c); -#if defined(AFS_LINUX26_ENV) +#if defined(AFS_LINUX26_ENV) +#if defined(INIT_WORK_HAS_DATA) struct work_struct tq; +#endif #else struct tq_struct tq; #endif diff --git a/src/afs/afs_daemons.c b/src/afs/afs_daemons.c index 21483f5..7de581e 100644 --- a/src/afs/afs_daemons.c +++ b/src/afs/afs_daemons.c @@ -342,7 +342,6 @@ afs_CheckRootVolume(void) afs_rootFid.Cell = localcell; if (afs_rootFid.Fid.Volume && afs_rootFid.Fid.Volume != volid && afs_globalVp) { - struct vcache *tvc = afs_globalVp; /* If we had a root fid before and it changed location we reset * the afs_globalVp so that it will be reevaluated. * Just decrement the reference count. This only occurs during diff --git a/src/afs/afs_dcache.c b/src/afs/afs_dcache.c index 681d75f..f9cab1b 100644 --- a/src/afs/afs_dcache.c +++ b/src/afs/afs_dcache.c @@ -567,7 +567,9 @@ afs_GetDownD(int anumber, int *aneedSpace, afs_int32 buckethint) afs_uint32 maxVictimPtr; /* where it is */ int discard; int curbucket; +#if defined(AFS_FBSD80_ENV) && !defined(UKERNEL) int vfslocked; +#endif #if defined(AFS_FBSD80_ENV) && !defined(UKERNEL) vfslocked = VFS_LOCK_GIANT(afs_globalVFS); diff --git a/src/afs/afs_init.c b/src/afs/afs_init.c index ef51501..fd79310 100644 --- a/src/afs/afs_init.c +++ b/src/afs/afs_init.c @@ -252,7 +252,7 @@ LookupInodeByPath(char *filename, ino_t * inode, struct vnode **fvpp) int afs_InitCellInfo(char *afile) { - ino_t inode; + ino_t inode = 0; int code; #if defined(LINUX_USE_FH) struct fid fh; diff --git a/src/afs/afs_osi_alloc.c b/src/afs/afs_osi_alloc.c index 6773316..8a9c188 100644 --- a/src/afs/afs_osi_alloc.c +++ b/src/afs/afs_osi_alloc.c @@ -168,7 +168,7 @@ osi_AllocLargeSpace(size_t size) AFS_STATCNT(osi_AllocLargeSpace); if (size > AFS_LRALLOCSIZ) - osi_Panic("osi_AllocLargeSpace: size=%d\n", size); + osi_Panic("osi_AllocLargeSpace: size=%d\n", (int)size); afs_stats_cmperf.LargeBlocksActive++; if (!freePacketList) { char *p; @@ -202,7 +202,7 @@ osi_AllocSmallSpace(size_t size) AFS_STATCNT(osi_AllocSmallSpace); if (size > AFS_SMALLOCSIZ) - osi_Panic("osi_AllocSmallS: size=%d\n", size); + osi_Panic("osi_AllocSmallS: size=%d\n", (int)size); if (!freeSmallList) { afs_stats_cmperf.SmallBlocksAlloced++; diff --git a/src/afs/afs_osi_gcpags.c b/src/afs/afs_osi_gcpags.c index b0e42cf..ccd46bb 100644 --- a/src/afs/afs_osi_gcpags.c +++ b/src/afs/afs_osi_gcpags.c @@ -499,7 +499,7 @@ afs_osi_proc2cred(AFS_PROC * pr) return rv; } #elif defined(AFS_LINUX22_ENV) -const struct AFS_UCRED * +struct AFS_UCRED * afs_osi_proc2cred(AFS_PROC * pr) { struct AFS_UCRED *rv = NULL; diff --git a/src/afs/afs_osi_pag.c b/src/afs/afs_osi_pag.c index ff977c2..dd4112d 100644 --- a/src/afs/afs_osi_pag.c +++ b/src/afs/afs_osi_pag.c @@ -520,7 +520,9 @@ afs_get_pag_from_groups(gid_t g0a, gid_t g1a) void afs_get_groups_from_pag(afs_uint32 pag, gid_t * g0p, gid_t * g1p) { +#ifndef AFS_LINUX26_ONEGROUP_ENV unsigned short g0, g1; +#endif AFS_STATCNT(afs_get_groups_from_pag); @@ -542,10 +544,12 @@ afs_get_groups_from_pag(afs_uint32 pag, gid_t * g0p, gid_t * g1p) afs_int32 -PagInCred(const struct AFS_UCRED *cred) +PagInCred(struct AFS_UCRED *cred) { afs_int32 pag; +#if !defined(AFS_LINUX26_ONEGROUP_ENV) gid_t g0, g1; +#endif #if defined(AFS_SUN510_ENV) const gid_t *gids; int ngroups; diff --git a/src/afs/afs_osi_vm.c b/src/afs/afs_osi_vm.c index 37e72e3..879ac3f 100644 --- a/src/afs/afs_osi_vm.c +++ b/src/afs/afs_osi_vm.c @@ -49,7 +49,9 @@ osi_Active(register struct vcache *avc) void osi_FlushPages(register struct vcache *avc, struct AFS_UCRED *credp) { +#ifdef AFS_FBSD70_ENV int vfslocked; +#endif afs_hyper_t origDV; #if defined(AFS_CACHE_BYPASS) /* The optimization to check DV under read lock below is identical a diff --git a/src/afs/afs_pioctl.c b/src/afs/afs_pioctl.c index 6ed5550..88b0888 100644 --- a/src/afs/afs_pioctl.c +++ b/src/afs/afs_pioctl.c @@ -1924,7 +1924,7 @@ DECL_PIOCTL(PGetTokens) register afs_int32 i; register struct unixuser *tu; register char *cp; - afs_int32 iterator; + afs_int32 iterator = 0; int newStyle; AFS_STATCNT(PGetTokens); diff --git a/src/afs/afs_prototypes.h b/src/afs/afs_prototypes.h index 5a17632..10b71bf 100644 --- a/src/afs/afs_prototypes.h +++ b/src/afs/afs_prototypes.h @@ -535,7 +535,7 @@ extern void shutdown_osinet(void); extern int afs_osi_suser(void *credp); extern void afs_osi_TraverseProcTable(void); #if defined(KERNEL) && !defined(UKERNEL) && defined(AFS_PROC) -extern const struct AFS_UCRED *afs_osi_proc2cred(AFS_PROC * pr); +extern struct AFS_UCRED *afs_osi_proc2cred(AFS_PROC * pr); #endif /* afs_osi_alloc.c */ @@ -584,7 +584,7 @@ extern afs_uint32 afs_get_pag_from_groups(struct group_info *gi); #endif #endif extern void afs_get_groups_from_pag(afs_uint32 pag, gid_t * g0p, gid_t * g1p); -extern afs_int32 PagInCred(const struct AFS_UCRED *cred); +extern afs_int32 PagInCred(struct AFS_UCRED *cred); /* afs_osi_uio.c */ extern int afsio_copy(struct uio *ainuio, struct uio *aoutuio, diff --git a/src/afs/afs_server.c b/src/afs/afs_server.c index 88bf43d..19f3092 100644 --- a/src/afs/afs_server.c +++ b/src/afs/afs_server.c @@ -643,7 +643,7 @@ afs_CheckServers(int adown, struct cell *acellp) multi_Rx(rxconns,nconns) { tv.tv_sec = tv.tv_usec = 0; - multi_RXAFS_GetTime(&tv.tv_sec, &tv.tv_usec); + multi_RXAFS_GetTime((afs_uint32 *)&tv.tv_sec, (afs_uint32 *)&tv.tv_usec); tc = conns[multi_i]; sa = tc->srvr; if (conntimer[multi_i] == 1) diff --git a/src/afs/afs_stats.h b/src/afs/afs_stats.h index 26ee645..2f30216 100644 --- a/src/afs/afs_stats.h +++ b/src/afs/afs_stats.h @@ -47,7 +47,7 @@ typedef struct timeval osi_timeval_t; #endif /* !KERNEL */ #define XSTATS_DECLS struct afs_stats_opTimingData *opP = NULL; \ - osi_timeval_t opStartTime, opStopTime, elapsedTime + osi_timeval_t opStartTime = { 0, 0}, opStopTime, elapsedTime #define XSTATS_START_TIME(arg) \ opP = &(afs_stats_cmfullperf.rpc.fsRPCTimes[arg]); \ diff --git a/src/afs/afs_user.c b/src/afs/afs_user.c index 2d6a53f..548c0e4 100644 --- a/src/afs/afs_user.c +++ b/src/afs/afs_user.c @@ -597,7 +597,7 @@ void afs_GCPAGs_perproc_func(AFS_PROC * pproc) { afs_int32 pag, hash, uid; - const struct AFS_UCRED *pcred; + struct AFS_UCRED *pcred; afs_GCPAGs_perproc_count++; diff --git a/src/afs/afs_vcache.c b/src/afs/afs_vcache.c index 284e214..1992d2e 100644 --- a/src/afs/afs_vcache.c +++ b/src/afs/afs_vcache.c @@ -668,7 +668,6 @@ afs_NewVCache(struct VenusFid *afid, struct server *serverp) # endif { int i; - char *panicstr; i = 0; for (tq = VLRU.prev; tq != &VLRU && anumber > 0; tq = uq) { @@ -3175,7 +3174,9 @@ afs_NFSFindVCache(struct vcache **avcp, struct VenusFid *afid) void afs_vcacheInit(int astatSize) { +#if (!defined(AFS_OSF_ENV) && !defined(AFS_LINUX22_ENV)) || defined(AFS_SGI_ENV) register struct vcache *tvp; +#endif int i; #if defined(AFS_OSF_ENV) || defined(AFS_LINUX22_ENV) if (!afs_maxvcount) { diff --git a/src/config/stds.h b/src/config/stds.h index dc2c70a..3437994 100644 --- a/src/config/stds.h +++ b/src/config/stds.h @@ -231,7 +231,7 @@ typedef struct afs_hyper_t { /* unsigned 64 bit integers */ #define SIGN 0x80000000 #define hadd32(a,i) \ - (((((a).low ^ (int)(i)) & SIGN) \ + ((void)((((a).low ^ (int)(i)) & SIGN) \ ? (((((a).low + (int)(i)) & SIGN) == 0) && (a).high++) \ : (((a).low & (int)(i) & SIGN) && (a).high++)), \ (a).low += (int)(i)) diff --git a/src/rx/LINUX/rx_kmutex.c b/src/rx/LINUX/rx_kmutex.c index 0385c5f..3fe5f26 100644 --- a/src/rx/LINUX/rx_kmutex.c +++ b/src/rx/LINUX/rx_kmutex.c @@ -45,7 +45,7 @@ afs_mutex_enter(afs_kmutex_t * l) down(&l->sem); #endif if (l->owner) - osi_Panic("mutex_enter: 0x%x held by %d", l, l->owner); + osi_Panic("mutex_enter: 0x%lx held by %d", (unsigned long)l, l->owner); l->owner = current->pid; } @@ -66,7 +66,7 @@ void afs_mutex_exit(afs_kmutex_t * l) { if (l->owner != current->pid) - osi_Panic("mutex_exit: 0x%x held by %d", l, l->owner); + osi_Panic("mutex_exit: 0x%lx held by %d", (unsigned long)l, l->owner); l->owner = 0; #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16) mutex_unlock(&l->mutex); @@ -93,7 +93,7 @@ afs_cv_wait(afs_kcondvar_t * cv, afs_kmutex_t * l, int sigok) #else struct wait_queue wait = { current, NULL }; #endif - + sigemptyset(&saved_set); seq = cv->seq; set_current_state(TASK_INTERRUPTIBLE); diff --git a/src/rx/LINUX/rx_knet.c b/src/rx/LINUX/rx_knet.c index 054152c..1db9b2a 100644 --- a/src/rx/LINUX/rx_knet.c +++ b/src/rx/LINUX/rx_knet.c @@ -314,8 +314,6 @@ extern rwlock_t tasklist_lock __attribute__((weak)); void osi_StopListener(void) { - struct task_struct *listener; - extern int rxk_ListenerPid; extern struct task_struct *rxk_ListenerTask; while (rxk_ListenerTask) { diff --git a/src/rx/rx.c b/src/rx/rx.c index e141d63..8a9deeb 100644 --- a/src/rx/rx.c +++ b/src/rx/rx.c @@ -3273,7 +3273,8 @@ rxi_ReceiveDataPacket(struct rx_call *call, int newPackets = 0; int didHardAck = 0; int haveLast = 0; - afs_uint32 seq, serial, flags; + afs_uint32 seq; + afs_uint32 serial=0, flags=0; int isFirst; struct rx_packet *tnp; struct clock when, now; diff --git a/src/rxkad/domestic/crypt_conn.c b/src/rxkad/domestic/crypt_conn.c index 846d307..fff00a5 100644 --- a/src/rxkad/domestic/crypt_conn.c +++ b/src/rxkad/domestic/crypt_conn.c @@ -73,7 +73,7 @@ rxkad_DecryptPacket(const struct rx_connection *conn, if (!data || !tlen) break; tlen = MIN(len, tlen); - fc_cbc_encrypt(data, data, tlen, schedule, xor, DECRYPT); + fc_cbc_encrypt(data, data, tlen, *schedule, xor, DECRYPT); len -= tlen; } /* Do this if packet checksums are ever enabled (below), but @@ -114,7 +114,7 @@ rxkad_EncryptPacket(const struct rx_connection * conn, if (!data || !tlen) break; tlen = MIN(len, tlen); - fc_cbc_encrypt(data, data, tlen, schedule, xor, ENCRYPT); + fc_cbc_encrypt(data, data, tlen, *schedule, xor, ENCRYPT); len -= tlen; } return 0; diff --git a/src/rxkad/domestic/fcrypt.c b/src/rxkad/domestic/fcrypt.c index efd5613..d27ea7f 100644 --- a/src/rxkad/domestic/fcrypt.c +++ b/src/rxkad/domestic/fcrypt.c @@ -111,7 +111,7 @@ fc_keysched(struct ktc_encryptionKey *key, fc_KeySchedule schedule) /* IN int encrypt; * 0 ==> decrypt, else encrypt */ afs_int32 fc_ecb_encrypt(void * clear, void * cipher, - fc_KeySchedule schedule, int encrypt) + const fc_KeySchedule schedule, int encrypt) { afs_uint32 L, R; volatile afs_uint32 S, P; @@ -200,7 +200,7 @@ fc_ecb_encrypt(void * clear, void * cipher, */ afs_int32 fc_cbc_encrypt(void *input, void *output, afs_int32 length, - fc_KeySchedule key, afs_uint32 * xor, int encrypt) + const fc_KeySchedule key, afs_uint32 * xor, int encrypt) { afs_uint32 i, j; afs_uint32 t_input[2]; diff --git a/src/rxkad/rxkad_common.c b/src/rxkad/rxkad_common.c index 5722cab..ed5b934 100644 --- a/src/rxkad/rxkad_common.c +++ b/src/rxkad/rxkad_common.c @@ -221,7 +221,7 @@ rxkad_DeriveXORInfo(struct rx_connection *aconnp, fc_KeySchedule * aschedule, rxkad_SetupEndpoint(aconnp, &tendpoint); memcpy((void *)xor, aivec, 2 * sizeof(afs_int32)); - fc_cbc_encrypt(&tendpoint, &tendpoint, sizeof(tendpoint), aschedule, xor, + fc_cbc_encrypt(&tendpoint, &tendpoint, sizeof(tendpoint), *aschedule, xor, ENCRYPT); memcpy(aresult, ((char *)&tendpoint) + sizeof(tendpoint) - ENCRYPTIONBLOCKSIZE, @@ -286,7 +286,7 @@ ComputeSum(struct rx_packet *apacket, fc_KeySchedule * aschedule, word[0] ^= aivec[0]; word[1] ^= aivec[1]; /* encrypts word as if it were a character string */ - fc_ecb_encrypt(word, word, aschedule, ENCRYPT); + fc_ecb_encrypt(word, word, *aschedule, ENCRYPT); t = ntohl(word[1]); t = (t >> 16) & 0xffff; if (t == 0) @@ -353,7 +353,7 @@ rxkad_NewConnection(struct rx_securityClass *aobj, return RXKADINCONSISTENCY; rxkad_SetLevel(aconn, tcp->level); /* set header and trailer sizes */ rxkad_AllocCID(aobj, aconn); /* CHANGES cid AND epoch!!!! */ - rxkad_DeriveXORInfo(aconn, tcp->keysched, tcp->ivec, tccp->preSeq); + rxkad_DeriveXORInfo(aconn, (fc_KeySchedule *)tcp->keysched, (char *)tcp->ivec, (char *)tccp->preSeq); INC_RXKAD_STATS(connections[rxkad_LevelIndex(tcp->level)]); } @@ -415,7 +415,7 @@ rxkad_CheckPacket(struct rx_securityClass *aobj, struct rx_call *acall, { struct rx_connection *tconn; rxkad_level level; - fc_KeySchedule *schedule; + const fc_KeySchedule *schedule; fc_InitializationVector *ivec; int len; int nlen = 0; @@ -439,7 +439,7 @@ rxkad_CheckPacket(struct rx_securityClass *aobj, struct rx_call *acall, INC_RXKAD_STATS(checkPackets[rxkad_StatIndex(rxkad_server, level)]); sconn->stats.packetsReceived++; sconn->stats.bytesReceived += len; - schedule = (fc_KeySchedule *) sconn->keysched; + schedule = (const fc_KeySchedule *) sconn->keysched; ivec = (fc_InitializationVector *) sconn->ivec; } else { INC_RXKAD_STATS(expired); @@ -461,12 +461,12 @@ rxkad_CheckPacket(struct rx_securityClass *aobj, struct rx_call *acall, cconn->stats.packetsReceived++; cconn->stats.bytesReceived += len; preSeq = cconn->preSeq; - schedule = (fc_KeySchedule *) tcp->keysched; + schedule = (const fc_KeySchedule *) tcp->keysched; ivec = (fc_InitializationVector *) tcp->ivec; } if (checkCksum) { - code = ComputeSum(apacket, schedule, preSeq); + code = ComputeSum(apacket, (fc_KeySchedule *)schedule, preSeq); if (code != rx_GetPacketCksum(apacket)) return RXKADSEALEDINCON; } @@ -476,11 +476,11 @@ rxkad_CheckPacket(struct rx_securityClass *aobj, struct rx_call *acall, return 0; /* shouldn't happen */ case rxkad_auth: rx_Pullup(apacket, 8); /* the following encrypts 8 bytes only */ - fc_ecb_encrypt(rx_DataOf(apacket), rx_DataOf(apacket), schedule, + fc_ecb_encrypt(rx_DataOf(apacket), rx_DataOf(apacket), *schedule, DECRYPT); break; case rxkad_crypt: - code = rxkad_DecryptPacket(tconn, schedule, ivec, len, apacket); + code = rxkad_DecryptPacket(tconn, schedule, (const fc_InitializationVector *)ivec, len, apacket); if (code) return code; break; @@ -571,7 +571,7 @@ rxkad_PreparePacket(struct rx_securityClass *aobj, struct rx_call *acall, nlen - (len + rx_GetSecurityHeaderSize(tconn))); } rx_Pullup(apacket, 8); /* the following encrypts 8 bytes only */ - fc_ecb_encrypt(rx_DataOf(apacket), rx_DataOf(apacket), schedule, + fc_ecb_encrypt(rx_DataOf(apacket), rx_DataOf(apacket), *schedule, ENCRYPT); break; case rxkad_crypt: @@ -580,7 +580,7 @@ rxkad_PreparePacket(struct rx_securityClass *aobj, struct rx_call *acall, rxi_RoundUpPacket(apacket, nlen - (len + rx_GetSecurityHeaderSize(tconn))); } - code = rxkad_EncryptPacket(tconn, schedule, ivec, nlen, apacket); + code = rxkad_EncryptPacket(tconn, (const fc_KeySchedule *)schedule, (const fc_InitializationVector *)ivec, nlen, apacket); if (code) return code; break; diff --git a/src/rxkad/rxkad_prototypes.h b/src/rxkad/rxkad_prototypes.h index 21c6e57..7db7bc2 100644 --- a/src/rxkad/rxkad_prototypes.h +++ b/src/rxkad/rxkad_prototypes.h @@ -29,9 +29,9 @@ extern afs_int32 rxkad_EncryptPacket(const struct rx_connection *conn, extern int fc_keysched(struct ktc_encryptionKey *key, fc_KeySchedule schedule); extern afs_int32 fc_ecb_encrypt(void * clear, void * cipher, - fc_KeySchedule schedule, int encrypt); + const fc_KeySchedule schedule, int encrypt); extern afs_int32 fc_cbc_encrypt(void *input, void *output, afs_int32 length, - fc_KeySchedule key, afs_uint32 * iv, + const fc_KeySchedule key, afs_uint32 * iv, int encrypt); /* rxkad_client.c */ -- 1.9.4