Date: Fri, 7 Dec 2001 01:47:56 +0100 (CET) From: Maxime Henrion <mux@qualys.com> To: FreeBSD-gnats-submit@freebsd.org Subject: bin/32567: [PATCH] WARNS cleanup in /usr/src/usr.sbin Message-ID: <200112070047.fB70lur04015@noos.fr>
next in thread | raw e-mail | index | archive | help
>Number: 32567
>Category: bin
>Synopsis: [PATCH] WARNS cleanup in /usr/src/usr.sbin
>Confidential: no
>Severity: non-critical
>Priority: medium
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Thu Dec 06 16:50:01 PST 2001
>Closed-Date:
>Last-Modified:
>Originator: Maxime Henrion
>Release: FreeBSD 5.0-CURRENT i386
>Organization:
None.
>Environment:
System: FreeBSD nebula.noos.fr 5.0-CURRENT FreeBSD 5.0-CURRENT #2: Thu Dec 6 23:31:39 CET 2001 root@nebula.noos.fr:/usr/src/sys/i386/compile/PROFILE i386
>Description:
I've converted some /usr/sbin programs to compile with WARNS=2.
Patches for burncd, devinfo, kldxref and quot.
burncd(8):
Index: Makefile
===================================================================
RCS file: /home/ncvs/src/usr.sbin/burncd/Makefile,v
retrieving revision 1.4
diff -u -r1.4 Makefile
--- Makefile 26 Mar 2001 14:39:38 -0000 1.4
+++ Makefile 7 Dec 2001 00:28:20 -0000
@@ -3,4 +3,6 @@
PROG= burncd
MAN= burncd.8
+WARNS?= 2
+
.include <bsd.prog.mk>
Index: burncd.c
===================================================================
RCS file: /home/ncvs/src/usr.sbin/burncd/burncd.c,v
retrieving revision 1.18
diff -u -r1.18 burncd.c
--- burncd.c 4 Dec 2001 21:48:56 -0000 1.18
+++ burncd.c 7 Dec 2001 00:31:24 -0000
@@ -72,7 +72,7 @@
int dao = 0, eject = 0, fixate = 0, list = 0, multi = 0, preemp = 0;
int nogap = 0, speed = 4, test_write = 0;
int block_size = 0, block_type = 0, cdopen = 0;
- char *devname = "/dev/acd0c";
+ const char *dev = "/dev/acd0c";
while ((ch = getopt(argc, argv, "def:lmnpqs:tv")) != -1) {
switch (ch) {
@@ -85,7 +85,7 @@
break;
case 'f':
- devname = optarg;
+ dev = optarg;
break;
case 'l':
@@ -132,8 +132,8 @@
if (argc == 0)
usage();
- if ((fd = open(devname, O_RDWR, 0)) < 0)
- err(EX_NOINPUT, "open(%s)", devname);
+ if ((fd = open(dev, O_RDWR, 0)) < 0)
+ err(EX_NOINPUT, "open(%s)", dev);
if (ioctl(fd, CDRIOCGETBLOCKSIZE, &saved_block_size) < 0)
err(EX_IOERR, "ioctl(CDRIOCGETBLOCKSIZE)");
@@ -281,7 +281,7 @@
void
add_track(char *name, int block_size, int block_type, int nogap)
{
- struct stat stat;
+ struct stat sb;
int file;
static int done_stdin = 0;
@@ -295,11 +295,11 @@
}
else if ((file = open(name, O_RDONLY, 0)) < 0)
err(EX_NOINPUT, "open(%s)", name);
- if (fstat(file, &stat) < 0)
+ if (fstat(file, &sb) < 0)
err(EX_IOERR, "fstat(%s)", name);
tracks[notracks].file = file;
tracks[notracks].file_name = name;
- tracks[notracks].file_size = stat.st_size;
+ tracks[notracks].file_size = sb.st_size;
tracks[notracks].block_size = block_size;
tracks[notracks].block_type = block_type;
@@ -321,7 +321,7 @@
fprintf(stderr,
"adding type 0x%02x file %s size %qd KB %d blocks %s\n",
tracks[notracks].block_type, name,
- stat.st_size / 1024, roundup_blocks(&tracks[notracks]),
+ sb.st_size / 1024, roundup_blocks(&tracks[notracks]),
pad ? "(0 padded)" : "");
}
notracks++;
@@ -530,13 +530,13 @@
}
void
-cue_ent(struct cdr_cue_entry *cue, int ctl, int adr, int track, int index,
+cue_ent(struct cdr_cue_entry *cue, int ctl, int adr, int track, int ind,
int dataform, int scms, int lba)
{
cue->adr = adr;
cue->ctl = ctl;
cue->track = track;
- cue->index = index;
+ cue->index = ind;
cue->dataform = dataform;
cue->scms = scms;
lba += 150;
@@ -546,7 +546,7 @@
}
void
-cleanup(int dummy)
+cleanup(int dummy __unused)
{
if (ioctl(fd, CDRIOCSETBLOCKSIZE, &saved_block_size) < 0)
err(EX_IOERR, "ioctl(CDRIOCSETBLOCKSIZE)");
devinfo(8):
Index: Makefile
===================================================================
RCS file: /home/ncvs/src/usr.sbin/devinfo/Makefile,v
retrieving revision 1.3
diff -u -r1.3 Makefile
--- Makefile 20 Jul 2001 06:20:32 -0000 1.3
+++ Makefile 7 Dec 2001 00:18:05 -0000
@@ -6,4 +6,6 @@
DPADD= ${LIBDEVINFO}
LDADD= -ldevinfo
+WARNS?= 2
+
.include <bsd.prog.mk>
Index: devinfo.c
===================================================================
RCS file: /home/ncvs/src/usr.sbin/devinfo/devinfo.c,v
retrieving revision 1.1
diff -u -r1.1 devinfo.c
--- devinfo.c 21 Apr 2001 00:13:25 -0000 1.1
+++ devinfo.c 7 Dec 2001 00:27:37 -0000
@@ -39,6 +39,13 @@
int rflag;
+void print_resource(struct devinfo_res *);
+int print_device_matching_resource(struct devinfo_res *, void *);
+int print_device_rman_resources(struct devinfo_rman *, void *);
+int print_device(struct devinfo_dev *, void *);
+int print_rman_resource(struct devinfo_res *, void *);
+int print_rman(struct devinfo_rman *, void *);
+
struct indent_arg
{
int indent;
@@ -150,7 +157,7 @@
* Print information about a resource under a resource manager.
*/
int
-print_rman_resource(struct devinfo_res *res, void *arg)
+print_rman_resource(struct devinfo_res *res, void *arg __unused)
{
struct devinfo_dev *dev;
@@ -170,7 +177,7 @@
* Print information about a resource manager.
*/
int
-print_rman(struct devinfo_rman *rman, void *arg)
+print_rman(struct devinfo_rman *rman, void *arg __unused)
{
printf("%s:\n", rman->dm_desc);
devinfo_foreach_rman_resource(rman, print_rman_resource, 0);
kldxref(8):
Index: Makefile
===================================================================
RCS file: /home/ncvs/src/usr.sbin/kldxref/Makefile,v
retrieving revision 1.2
diff -u -r1.2 Makefile
--- Makefile 12 Oct 2001 02:06:34 -0000 1.2
+++ Makefile 7 Dec 2001 00:13:33 -0000
@@ -4,4 +4,6 @@
SRCS= kldxref.c ef.c
MAN= kldxref.8
+WARNS?= 2
+
.include <bsd.prog.mk>
Index: ef.c
===================================================================
RCS file: /home/ncvs/src/usr.sbin/kldxref/ef.c,v
retrieving revision 1.1
diff -u -r1.1 ef.c
--- ef.c 11 Sep 2001 01:13:15 -0000 1.1
+++ ef.c 7 Dec 2001 00:16:51 -0000
@@ -49,6 +49,10 @@
#include "ef.h"
+void ef_print_phdr(Elf_Phdr *);
+u_long ef_get_offset(elf_file_t, Elf_Off);
+int ef_parse_dynamic(elf_file_t);
+
void
ef_print_phdr(Elf_Phdr *phdr)
{
@@ -214,11 +218,11 @@
ef_read(elf_file_t ef, Elf_Off offset, size_t len, void*dest)
{
- if (offset != -1) {
+ if (offset != (Elf_Off)-1) {
if (lseek(ef->ef_fd, offset, SEEK_SET) == -1)
return EIO;
}
- return read(ef->ef_fd, dest, len) == len ? 0 : EIO;
+ return (unsigned)read(ef->ef_fd, dest, len) == len ? 0 : EIO;
}
int
Index: kldxref.c
===================================================================
RCS file: /home/ncvs/src/usr.sbin/kldxref/kldxref.c,v
retrieving revision 1.1
diff -u -r1.1 kldxref.c
--- kldxref.c 11 Sep 2001 01:13:15 -0000 1.1
+++ kldxref.c 7 Dec 2001 00:14:10 -0000
@@ -81,11 +81,12 @@
FILE *fxref;
-static char *xref_file = "linker.hints";
+static const char *xref_file = "linker.hints";
static char recbuf[MAXRECSIZE];
static int recpos, reccnt;
+void maketempfile(char *, const char *);
static void usage(void);
static void
quot(8):
Index: Makefile
===================================================================
RCS file: /home/ncvs/src/usr.sbin/quot/Makefile,v
retrieving revision 1.7
diff -u -r1.7 Makefile
--- Makefile 26 Mar 2001 14:41:35 -0000 1.7
+++ Makefile 6 Dec 2001 23:22:09 -0000
@@ -3,4 +3,6 @@
PROG= quot
MAN= quot.8
+WARNS?= 2
+
.include <bsd.prog.mk>
Index: quot.c
===================================================================
RCS file: /home/ncvs/src/usr.sbin/quot/quot.c,v
retrieving revision 1.14
diff -u -r1.14 quot.c
--- quot.c 10 Mar 2001 12:12:47 -0000 1.14
+++ quot.c 7 Dec 2001 00:34:50 -0000
@@ -56,11 +56,26 @@
static char estimate;
static char count;
static char unused;
-static void (*func)();
+static void (*func)(int, struct fs *, char *);
static long blocksize;
static char *header;
static int headerlen;
+static struct dinode *get_inode(int, struct fs *, ino_t);
+static int virtualblocks(struct fs *, struct dinode *);
+static int isfree(struct dinode *);
+static void inituser(void);
+static void usrrehash(void);
+static struct user *user(uid_t);
+static int cmpusers(const void *, const void *);
+static void uses(uid_t, daddr_t, time_t);
+static void initfsizes(void);
+static void dofsizes(int, struct fs *, char *);
+static void douser(int, struct fs *, char *);
+static void donames(int, struct fs *, char *);
+static void usage(void);
+void quot(char *, char *);
+
/*
* Original BSD quot doesn't round to number of frags/blocks,
* doesn't account for indirection blocks and gets it totally
@@ -83,6 +98,7 @@
static struct dinode *
get_inode(fd,super,ino)
+ int fd;
struct fs *super;
ino_t ino;
{
@@ -103,7 +119,7 @@
errx(1, "allocate inodes");
last = (ino / INOCNT(super)) * INOCNT(super);
if (lseek(fd, (off_t)ino_to_fsba(super, last) << super->fs_fshift, 0) < (off_t)0
- || read(fd,ip,INOSZ(super)) != INOSZ(super))
+ || (unsigned)read(fd,ip,INOSZ(super)) != INOSZ(super))
err(1, "read inodes");
}
@@ -184,7 +200,7 @@
static void
inituser()
{
- register i;
+ register int i;
register struct user *usr;
if (!nusers) {
@@ -203,7 +219,7 @@
static void
usrrehash()
{
- register i;
+ register int i;
register struct user *usr, *usrn;
struct user *svusr;
@@ -226,7 +242,7 @@
uid_t uid;
{
register struct user *usr;
- register i;
+ register int i;
struct passwd *pwd;
while (1) {
@@ -259,9 +275,14 @@
}
static int
-cmpusers(u1,u2)
- struct user *u1, *u2;
+cmpusers(v1,v2)
+ const void *v1, *v2;
{
+ /* To avoid warnings */
+ const struct user *u1, *u2;
+ u1 = (const struct user *)v1;
+ u2 = (const struct user *)v2;
+
return u2->space - u1->space;
}
@@ -308,7 +329,7 @@
initfsizes()
{
register struct fsizes *fp;
- register i;
+ register int i;
for (fp = fsizes; fp; fp = fp->fsz_next) {
for (i = FSZCNT; --i >= 0;) {
@@ -320,6 +341,7 @@
static void
dofsizes(fd,super,name)
+ int fd;
struct fs *super;
char *name;
{
@@ -327,7 +349,7 @@
struct dinode *ip;
daddr_t sz, ksz;
struct fsizes *fp, **fsp;
- register i;
+ register int i;
maxino = super->fs_ncg * super->fs_ipg - 1;
#ifdef COMPAT
@@ -393,13 +415,14 @@
static void
douser(fd,super,name)
+ int fd;
struct fs *super;
char *name;
{
ino_t inode, maxino;
struct user *usr, *usrs;
struct dinode *ip;
- register n;
+ register int n;
maxino = super->fs_ncg * super->fs_ipg - 1;
for (inode = 0; inode < maxino; inode++) {
@@ -421,7 +444,7 @@
for (usr = usrs, n = nusers; --n >= 0 && usr->count; usr++) {
printf("%5d",SIZE(usr->space));
if (count)
- printf("\t%5d",usr->count);
+ printf("\t%5ld",usr->count);
printf("\t%-8s",usr->name);
if (unused)
printf("\t%5d\t%5d\t%5d",
@@ -435,6 +458,7 @@
static void
donames(fd,super,name)
+ int fd;
struct fs *super;
char *name;
{
@@ -450,7 +474,7 @@
ungetc(c,stdin);
inode1 = -1;
while (scanf("%d",&inode) == 1) {
- if (inode < 0 || inode > maxino) {
+ if (inode > maxino) {
warnx("illegal inode %d",inode);
return;
}
@@ -498,7 +522,7 @@
{
int fd;
- get_inode(-1); /* flush cache */
+ get_inode(-1, NULL, 0); /* flush cache */
inituser();
initfsizes();
if ((fd = open(name,0)) < 0
@@ -517,12 +541,13 @@
if (mp)
printf(" (%s)",mp);
putchar('\n');
- (*func)(fd,superblock,name);
+ (*func)(fd,(struct fs *)superblock,name);
close(fd);
}
int
main(argc,argv)
+ int argc;
char **argv;
{
char all = 0;
>How-To-Repeat:
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted:
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200112070047.fB70lur04015>
