mirror of
https://git.openafs.org/openafs.git
synced 2025-01-19 15:30:14 +00:00
ubik/udebug.c, vol/vol-info.c: check array index before dereferencing
Avoid out-of-bounds array accesses by first checking that the index is in-bounds, and then dereferencing; not the other way around. Change-Id: Ib36a28ca6181a7a7fd602de45cb5a15fad099a44 Reviewed-on: http://gerrit.openafs.org/8879 Reviewed-by: Derrick Brashear <shadow@your-file-system.com> Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com> Tested-by: BuildBot <buildbot@rampaginggeek.com>
This commit is contained in:
parent
5c5515a5c3
commit
0e83cde60e
@ -144,7 +144,7 @@ CommandProc(struct cmd_syndesc *as, void *arock)
|
||||
times[24] = 0;
|
||||
if (!oldServer) {
|
||||
printf("Host's addresses are: ");
|
||||
for (j = 0; udebug.interfaceAddr[j] && (j < UBIK_MAX_INTERFACE_ADDR);
|
||||
for (j = 0; (j < UBIK_MAX_INTERFACE_ADDR) && udebug.interfaceAddr[j];
|
||||
j++)
|
||||
printf("%s ", afs_inet_ntoa_r(htonl(udebug.interfaceAddr[j]), hoststr));
|
||||
printf("\n");
|
||||
@ -277,7 +277,7 @@ CommandProc(struct cmd_syndesc *as, void *arock)
|
||||
/* otherwise print the structure */
|
||||
printf("\nServer (%s", afs_inet_ntoa_r(htonl(usdebug.addr), hoststr));
|
||||
for (j = 0;
|
||||
((usdebug.altAddr[j]) && (j < UBIK_MAX_INTERFACE_ADDR - 1));
|
||||
((j < UBIK_MAX_INTERFACE_ADDR - 1) && (usdebug.altAddr[j]));
|
||||
j++)
|
||||
printf(" %s", afs_inet_ntoa_r(htonl(usdebug.altAddr[j]), hoststr));
|
||||
printf("): (db %d.%d)", usdebug.remoteVersion.epoch,
|
||||
|
@ -2116,7 +2116,7 @@ ModeMaskMatch(unsigned int modeBits)
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i = 0; ModeMask[i] && i <= sizeof(ModeMask) / sizeof(*ModeMask); i++) {
|
||||
for (i = 0; i < sizeof(ModeMask) / sizeof(*ModeMask) && ModeMask[i]; i++) {
|
||||
if ((ModeMask[i] & modeBits) == 0) {
|
||||
return 0; /* at least one mode bit is not present */
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user