Date: Sat, 3 May 2003 15:07:49 -0700 (PDT) From: Marcel Moolenaar <marcel@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 30480 for review Message-ID: <200305032207.h43M7nV2083998@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=30480 Change 30480 by marcel@marcel_pluto1 on 2003/05/03 15:06:55 IFC @30477 Affected files ... .. //depot/projects/sio/bin/df/df.c#3 integrate .. //depot/projects/sio/bin/ed/ed.1#2 integrate .. //depot/projects/sio/bin/ls/extern.h#2 integrate .. //depot/projects/sio/bin/ls/ls.c#2 integrate .. //depot/projects/sio/bin/ls/print.c#2 integrate .. //depot/projects/sio/bin/ls/util.c#2 integrate .. //depot/projects/sio/bin/pax/ar_io.c#2 integrate .. //depot/projects/sio/bin/pax/ar_subs.c#2 integrate .. //depot/projects/sio/bin/pax/cache.c#2 integrate .. //depot/projects/sio/bin/pax/cpio.c#3 integrate .. //depot/projects/sio/bin/pax/extern.h#2 integrate .. //depot/projects/sio/bin/pax/gen_subs.c#2 integrate .. //depot/projects/sio/bin/pax/getoldopt.c#2 integrate .. //depot/projects/sio/bin/pax/options.c#3 integrate .. //depot/projects/sio/bin/pax/pat_rep.c#2 integrate .. //depot/projects/sio/bin/pax/pax.c#3 integrate .. //depot/projects/sio/bin/pax/pax.h#2 integrate .. //depot/projects/sio/bin/ps/fmt.c#2 integrate .. //depot/projects/sio/bin/rcp/rcp.c#4 integrate .. //depot/projects/sio/bin/sleep/sleep.c#3 integrate .. //depot/projects/sio/bin/stty/gfmt.c#2 integrate .. //depot/projects/sio/contrib/smbfs/smbutil/common.h#2 integrate .. //depot/projects/sio/etc/Makefile#3 integrate .. //depot/projects/sio/etc/devd.conf#2 integrate .. //depot/projects/sio/etc/usbd.conf#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/TESTS/Makefile#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/TESTS/check1.c#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/TESTS/check2.c#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/TESTS/check3.c#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/TESTS/dselect.c#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/TESTS/fselect.c#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/TESTS/ftree1.c#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/TESTS/ftree2.c#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/TESTS/gauge.c#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/TESTS/input1.c#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/TESTS/input2.c#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/TESTS/menu1.c#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/TESTS/menu2.c#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/TESTS/menu3.c#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/TESTS/msg.c#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/TESTS/prgbox.c#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/TESTS/radio1.c#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/TESTS/radio2.c#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/TESTS/radio3.c#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/TESTS/text.c#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/TESTS/tree.c#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/TESTS/yesno.c#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/checklist.c#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/kernel.c#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/menubox.c#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/msgbox.c#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/notify.c#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/prgbox.c#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/radiolist.c#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/raw_popen.c#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/textbox.c#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/tree.c#2 integrate .. //depot/projects/sio/gnu/lib/libdialog/yesno.c#2 integrate .. //depot/projects/sio/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#4 integrate .. //depot/projects/sio/release/scripts/doFS.sh#2 integrate .. //depot/projects/sio/sbin/adjkerntz/adjkerntz.c#2 integrate .. //depot/projects/sio/sbin/badsect/badsect.c#2 integrate .. //depot/projects/sio/sbin/bsdlabel/Makefile#3 integrate .. //depot/projects/sio/sbin/bsdlabel/bsdlabel.8#2 integrate .. //depot/projects/sio/sbin/bsdlabel/bsdlabel.c#3 integrate .. //depot/projects/sio/sbin/ccdconfig/ccdconfig.c#2 integrate .. //depot/projects/sio/sbin/clri/clri.c#2 integrate .. //depot/projects/sio/sbin/comcontrol/comcontrol.c#2 integrate .. //depot/projects/sio/sbin/cxconfig/cxconfig.c#2 integrate .. //depot/projects/sio/sbin/disklabel/disklabel.c#2 integrate .. //depot/projects/sio/sbin/dumpon/dumpon.c#2 integrate .. //depot/projects/sio/sbin/fdisk/fdisk.c#2 integrate .. //depot/projects/sio/sbin/fsck_ffs/dir.c#2 integrate .. //depot/projects/sio/sbin/fsck_ffs/ea.c#2 integrate .. //depot/projects/sio/sbin/fsck_ffs/fsutil.c#2 integrate .. //depot/projects/sio/sbin/fsck_ffs/inode.c#2 integrate .. //depot/projects/sio/sbin/fsck_ffs/main.c#2 integrate .. //depot/projects/sio/sbin/fsck_ffs/pass1.c#2 integrate .. //depot/projects/sio/sbin/fsck_ffs/pass1b.c#2 integrate .. //depot/projects/sio/sbin/fsck_ffs/pass2.c#2 integrate .. //depot/projects/sio/sbin/fsck_ffs/pass3.c#2 integrate .. //depot/projects/sio/sbin/fsck_ffs/pass4.c#2 integrate .. //depot/projects/sio/sbin/fsck_ffs/pass5.c#2 integrate .. //depot/projects/sio/sbin/fsck_ffs/setup.c#2 integrate .. //depot/projects/sio/sbin/fsck_ffs/utilities.c#2 integrate .. //depot/projects/sio/sbin/kldconfig/kldconfig.c#2 integrate .. //depot/projects/sio/sbin/kldload/kldload.c#2 integrate .. //depot/projects/sio/sbin/kldstat/kldstat.c#2 integrate .. //depot/projects/sio/sbin/kldunload/kldunload.c#2 integrate .. //depot/projects/sio/sbin/md5/md5.c#2 integrate .. //depot/projects/sio/sbin/mdmfs/mdmfs.c#2 integrate .. //depot/projects/sio/sbin/mount/getmntopts.c#2 integrate .. //depot/projects/sio/sbin/mount/vfslist.c#2 integrate .. //depot/projects/sio/sbin/mount_nfs/mount_nfs.c#2 integrate .. //depot/projects/sio/sbin/newfs/mkfs.c#2 integrate .. //depot/projects/sio/sbin/newfs/newfs.c#2 integrate .. //depot/projects/sio/sbin/nfsiod/nfsiod.c#2 integrate .. //depot/projects/sio/sbin/ping/ping.c#2 integrate .. //depot/projects/sio/sbin/quotacheck/preen.c#2 integrate .. //depot/projects/sio/sbin/quotacheck/quotacheck.c#2 integrate .. //depot/projects/sio/sbin/reboot/reboot.c#2 integrate .. //depot/projects/sio/sbin/shutdown/shutdown.c#2 integrate .. //depot/projects/sio/sbin/spppcontrol/spppcontrol.c#2 integrate .. //depot/projects/sio/sbin/sunlabel/Makefile#2 integrate .. //depot/projects/sio/sbin/swapon/swapon.c#2 integrate .. //depot/projects/sio/sbin/tunefs/tunefs.c#2 integrate .. //depot/projects/sio/share/man/man4/Makefile#2 integrate .. //depot/projects/sio/share/man/man4/rue.4#1 branch .. //depot/projects/sio/share/misc/bsd-family-tree#2 integrate .. //depot/projects/sio/share/mk/bsd.README#2 integrate .. //depot/projects/sio/share/mk/bsd.prog.mk#2 integrate .. //depot/projects/sio/sys/amd64/amd64/cpu_switch.S#1 branch .. //depot/projects/sio/sys/amd64/amd64/exception.S#1 branch .. //depot/projects/sio/sys/amd64/amd64/exception.s#2 delete .. //depot/projects/sio/sys/amd64/amd64/locore.S#1 branch .. //depot/projects/sio/sys/amd64/amd64/locore.s#2 delete .. //depot/projects/sio/sys/amd64/amd64/sigtramp.S#1 branch .. //depot/projects/sio/sys/amd64/amd64/sigtramp.s#2 delete .. //depot/projects/sio/sys/amd64/amd64/support.S#1 branch .. //depot/projects/sio/sys/amd64/amd64/support.s#2 delete .. //depot/projects/sio/sys/amd64/amd64/swtch.s#2 delete .. //depot/projects/sio/sys/amd64/isa/icu_ipl.S#1 branch .. //depot/projects/sio/sys/amd64/isa/icu_ipl.s#2 delete .. //depot/projects/sio/sys/amd64/isa/icu_vector.S#1 branch .. //depot/projects/sio/sys/amd64/isa/icu_vector.s#2 delete .. //depot/projects/sio/sys/amd64/isa/vector.S#1 branch .. //depot/projects/sio/sys/amd64/isa/vector.s#2 delete .. //depot/projects/sio/sys/cam/scsi/scsi_da.c#3 integrate .. //depot/projects/sio/sys/conf/NOTES#3 integrate .. //depot/projects/sio/sys/conf/files#5 integrate .. //depot/projects/sio/sys/conf/files.amd64#3 integrate .. //depot/projects/sio/sys/conf/kern.mk#2 integrate .. //depot/projects/sio/sys/contrib/dev/acpica/hwregs.c#2 integrate .. //depot/projects/sio/sys/dev/ata/ata-all.c#3 integrate .. //depot/projects/sio/sys/dev/ata/ata-chipset.c#4 integrate .. //depot/projects/sio/sys/dev/bge/if_bge.c#3 integrate .. //depot/projects/sio/sys/dev/ct/ct_isa.c#2 integrate .. //depot/projects/sio/sys/dev/em/if_em.c#2 integrate .. //depot/projects/sio/sys/dev/em/if_em.h#2 integrate .. //depot/projects/sio/sys/dev/em/if_em_hw.c#2 integrate .. //depot/projects/sio/sys/dev/em/if_em_hw.h#2 integrate .. //depot/projects/sio/sys/dev/em/if_em_osdep.h#2 integrate .. //depot/projects/sio/sys/dev/mii/brgphy.c#3 integrate .. //depot/projects/sio/sys/dev/mii/ruephy.c#1 branch .. //depot/projects/sio/sys/dev/mii/ruephyreg.h#1 branch .. //depot/projects/sio/sys/dev/snc/dp83932subr.c#2 integrate .. //depot/projects/sio/sys/dev/usb/if_rue.c#1 branch .. //depot/projects/sio/sys/dev/usb/if_ruereg.h#1 branch .. //depot/projects/sio/sys/dev/usb/usbdevs#2 integrate .. //depot/projects/sio/sys/dev/usb/usbdevs.h#2 integrate .. //depot/projects/sio/sys/dev/usb/usbdevs_data.h#2 integrate .. //depot/projects/sio/sys/geom/geom_aes.c#3 integrate .. //depot/projects/sio/sys/geom/geom_bsd.c#3 integrate .. //depot/projects/sio/sys/geom/geom_bsd_enc.c#3 integrate .. //depot/projects/sio/sys/kern/vfs_subr.c#3 integrate .. //depot/projects/sio/sys/modules/Makefile#2 integrate .. //depot/projects/sio/sys/modules/mii/Makefile#2 integrate .. //depot/projects/sio/sys/modules/rue/Makefile#1 branch .. //depot/projects/sio/sys/sys/disklabel.h#2 integrate .. //depot/projects/sio/sys/ufs/ffs/ffs_vnops.c#2 integrate .. //depot/projects/sio/sys/vm/vm_object.c#4 integrate .. //depot/projects/sio/sys/vm/vm_pageout.h#2 integrate .. //depot/projects/sio/usr.bin/chpass/chpass.c#2 integrate .. //depot/projects/sio/usr.bin/chpass/table.c#2 integrate .. //depot/projects/sio/usr.bin/cut/cut.1#2 integrate .. //depot/projects/sio/usr.bin/nohup/nohup.c#2 integrate .. //depot/projects/sio/usr.bin/unifdef/unifdef.c#2 integrate .. //depot/projects/sio/usr.bin/uudecode/uudecode.c#2 integrate .. //depot/projects/sio/usr.bin/uuencode/uuencode.c#2 integrate .. //depot/projects/sio/usr.bin/xargs/xargs.c#2 integrate .. //depot/projects/sio/usr.bin/xlint/arch/amd64/targparam.h#1 branch .. //depot/projects/sio/usr.bin/xlint/xlint/xlint.c#2 integrate .. //depot/projects/sio/usr.sbin/accton/accton.c#2 integrate .. //depot/projects/sio/usr.sbin/ancontrol/ancontrol.c#2 integrate .. //depot/projects/sio/usr.sbin/arp/arp.c#2 integrate .. //depot/projects/sio/usr.sbin/boot0cfg/boot0cfg.c#2 integrate .. //depot/projects/sio/usr.sbin/cdcontrol/cdcontrol.c#2 integrate .. //depot/projects/sio/usr.sbin/chkgrp/chkgrp.c#2 integrate .. //depot/projects/sio/usr.sbin/chown/chown.c#2 integrate .. //depot/projects/sio/usr.sbin/chroot/chroot.c#2 integrate .. //depot/projects/sio/usr.sbin/dev_mkdb/dev_mkdb.c#2 integrate .. //depot/projects/sio/usr.sbin/edquota/edquota.c#2 integrate .. //depot/projects/sio/usr.sbin/fdcontrol/fdcontrol.c#2 integrate .. //depot/projects/sio/usr.sbin/kbdcontrol/kbdcontrol.c#2 integrate .. //depot/projects/sio/usr.sbin/kernbb/kernbb.c#2 integrate .. //depot/projects/sio/usr.sbin/lptcontrol/lptcontrol.c#2 integrate .. //depot/projects/sio/usr.sbin/mergemaster/mergemaster.sh#3 integrate .. //depot/projects/sio/usr.sbin/mixer/mixer.c#2 integrate .. //depot/projects/sio/usr.sbin/mtree/compare.c#2 integrate .. //depot/projects/sio/usr.sbin/mtree/create.c#2 integrate .. //depot/projects/sio/usr.sbin/mtree/excludes.c#2 integrate .. //depot/projects/sio/usr.sbin/mtree/misc.c#2 integrate .. //depot/projects/sio/usr.sbin/mtree/mtree.c#2 integrate .. //depot/projects/sio/usr.sbin/mtree/spec.c#2 integrate .. //depot/projects/sio/usr.sbin/mtree/verify.c#2 integrate .. //depot/projects/sio/usr.sbin/newsyslog/newsyslog.c#2 integrate .. //depot/projects/sio/usr.sbin/procctl/procctl.c#2 integrate .. //depot/projects/sio/usr.sbin/pstat/pstat.c#2 integrate .. //depot/projects/sio/usr.sbin/pwd_mkdb/pwd_mkdb.c#2 integrate .. //depot/projects/sio/usr.sbin/quot/quot.c#2 integrate .. //depot/projects/sio/usr.sbin/quotaon/quotaon.c#2 integrate .. //depot/projects/sio/usr.sbin/rarpd/rarpd.c#2 integrate .. //depot/projects/sio/usr.sbin/repquota/repquota.c#2 integrate .. //depot/projects/sio/usr.sbin/rmt/rmt.c#2 integrate .. //depot/projects/sio/usr.sbin/rpc.umntall/mounttab.c#2 integrate .. //depot/projects/sio/usr.sbin/rpc.yppasswdd/yppasswd_private.x#2 integrate .. //depot/projects/sio/usr.sbin/rpc.yppasswdd/yppasswdd_main.c#2 integrate .. //depot/projects/sio/usr.sbin/rpc.yppasswdd/yppasswdd_server.c#2 integrate .. //depot/projects/sio/usr.sbin/rpc.ypupdated/yp_dbdelete.c#2 integrate .. //depot/projects/sio/usr.sbin/rpc.ypupdated/yp_dbupdate.c#2 integrate .. //depot/projects/sio/usr.sbin/rpc.ypupdated/ypupdated_main.c#2 integrate .. //depot/projects/sio/usr.sbin/rpc.ypupdated/ypupdated_server.c#2 integrate .. //depot/projects/sio/usr.sbin/rpc.ypxfrd/ypxfrd_main.c#2 integrate .. //depot/projects/sio/usr.sbin/rpc.ypxfrd/ypxfrd_server.c#2 integrate .. //depot/projects/sio/usr.sbin/sa/main.c#2 integrate .. //depot/projects/sio/usr.sbin/sa/pdb.c#2 integrate .. //depot/projects/sio/usr.sbin/sa/usrdb.c#2 integrate .. //depot/projects/sio/usr.sbin/slstat/slstat.c#2 integrate .. //depot/projects/sio/usr.sbin/trpt/trpt.c#2 integrate .. //depot/projects/sio/usr.sbin/vipw/vipw.c#2 integrate .. //depot/projects/sio/usr.sbin/watch/watch.c#2 integrate .. //depot/projects/sio/usr.sbin/wicontrol/wicontrol.c#2 integrate .. //depot/projects/sio/usr.sbin/yp_mkdb/yp_mkdb.c#2 integrate .. //depot/projects/sio/usr.sbin/ypbind/yp_ping.c#2 integrate .. //depot/projects/sio/usr.sbin/ypbind/ypbind.c#2 integrate .. //depot/projects/sio/usr.sbin/yppoll/yppoll.c#2 integrate .. //depot/projects/sio/usr.sbin/yppush/yppush_main.c#2 integrate .. //depot/projects/sio/usr.sbin/ypserv/yp_access.c#2 integrate .. //depot/projects/sio/usr.sbin/ypserv/yp_dblookup.c#2 integrate .. //depot/projects/sio/usr.sbin/ypserv/yp_dnslookup.c#2 integrate .. //depot/projects/sio/usr.sbin/ypserv/yp_error.c#2 integrate .. //depot/projects/sio/usr.sbin/ypserv/yp_main.c#2 integrate .. //depot/projects/sio/usr.sbin/ypserv/yp_server.c#2 integrate .. //depot/projects/sio/usr.sbin/ypserv/yp_svc_udp.c#2 integrate .. //depot/projects/sio/usr.sbin/ypset/ypset.c#2 integrate Differences ... ==== //depot/projects/sio/bin/df/df.c#3 (text+ko) ==== @@ -48,7 +48,7 @@ #endif /* not lint */ #endif #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/bin/df/df.c,v 1.46 2003/05/01 16:58:55 obrien Exp $"); +__FBSDID("$FreeBSD: src/bin/df/df.c,v 1.48 2003/05/03 16:02:52 markm Exp $"); #include <sys/param.h> #include <sys/stat.h> @@ -57,6 +57,7 @@ #include <ufs/ufs/ufsmount.h> #include <err.h> #include <math.h> +#include <inttypes.h> #include <stdio.h> #include <stdlib.h> #include <string.h> @@ -88,37 +89,51 @@ /* Maximum widths of various fields. */ struct maxwidths { - int mntfrom; - int total; - int used; - int avail; - int iused; - int ifree; + size_t mntfrom; + size_t total; + size_t used; + size_t avail; + size_t iused; + size_t ifree; }; -unsigned long long vals_si [] = {1, KILO_SI_SZ, MEGA_SI_SZ, GIGA_SI_SZ, TERA_SI_SZ, PETA_SI_SZ}; -unsigned long long vals_base2[] = {1, KILO_2_SZ, MEGA_2_SZ, GIGA_2_SZ, TERA_2_SZ, PETA_2_SZ}; -unsigned long long *valp; +static uintmax_t vals_si [] = { + 1, + KILO_SI_SZ, + MEGA_SI_SZ, + GIGA_SI_SZ, + TERA_SI_SZ, + PETA_SI_SZ +}; +static uintmax_t vals_base2[] = { + 1, + KILO_2_SZ, + MEGA_2_SZ, + GIGA_2_SZ, + TERA_2_SZ, + PETA_2_SZ +}; +static uintmax_t *valp; typedef enum { NONE, KILO, MEGA, GIGA, TERA, PETA, UNIT_MAX } unit_t; -unit_t unitp [] = { NONE, KILO, MEGA, GIGA, TERA, PETA }; +static unit_t unitp [] = { NONE, KILO, MEGA, GIGA, TERA, PETA }; -static char *getmntpt(char *); -static int longwidth(long); +static char *getmntpt(const char *); +static size_t longwidth(long); static char *makenetvfslist(void); -static void prthuman(struct statfs *, long); +static void prthuman(const struct statfs *, long); static void prthumanval(double); static void prtstat(struct statfs *, struct maxwidths *); static long regetmntinfo(struct statfs **, long, const char **); static unit_t unit_adjust(double *); -static void update_maxwidths(struct maxwidths *, struct statfs *); +static void update_maxwidths(struct maxwidths *, const struct statfs *); static void usage(void); -static __inline int -imax(int a, int b) +static __inline u_int +max(u_int a, u_int b) { - return (MAX(a, b)); + return (a > b ? a : b); } static int aflag = 0, hflag, iflag, nflag; @@ -275,7 +290,7 @@ } static char * -getmntpt(char *name) +getmntpt(const char *name) { long mntsize, i; struct statfs *mntbuf; @@ -326,13 +341,13 @@ { double abval; unit_t unit; - unsigned int unit_sz; + int unit_sz; abval = fabs(*val); unit_sz = abval ? ilogb(abval) / 10 : 0; - if (unit_sz >= UNIT_MAX) { + if (unit_sz >= (int)UNIT_MAX) { unit = NONE; } else { unit = unitp[unit_sz]; @@ -343,7 +358,7 @@ } static void -prthuman(struct statfs *sfsp, long used) +prthuman(const struct statfs *sfsp, long used) { prthumanval((double)sfsp->f_blocks * (double)sfsp->f_bsize); @@ -381,43 +396,46 @@ prtstat(struct statfs *sfsp, struct maxwidths *mwp) { static long blocksize; - static int headerlen, timesthrough; + static int headerlen, timesthrough = 0; static const char *header; long used, availblks, inodes; if (++timesthrough == 1) { - mwp->mntfrom = imax(mwp->mntfrom, strlen("Filesystem")); + mwp->mntfrom = max(mwp->mntfrom, strlen("Filesystem")); if (hflag) { header = " Size"; mwp->total = mwp->used = mwp->avail = strlen(header); } else { header = getbsize(&headerlen, &blocksize); - mwp->total = imax(mwp->total, headerlen); + mwp->total = max(mwp->total, (u_int)headerlen); } - mwp->used = imax(mwp->used, strlen("Used")); - mwp->avail = imax(mwp->avail, strlen("Avail")); + mwp->used = max(mwp->used, strlen("Used")); + mwp->avail = max(mwp->avail, strlen("Avail")); - (void)printf("%-*s %-*s %*s %*s Capacity", mwp->mntfrom, - "Filesystem", mwp->total, header, mwp->used, "Used", - mwp->avail, "Avail"); + (void)printf("%-*s %-*s %*s %*s Capacity", + (u_int)mwp->mntfrom, "Filesystem", + (u_int)mwp->total, header, + (u_int)mwp->used, "Used", + (u_int)mwp->avail, "Avail"); if (iflag) { - mwp->iused = imax(mwp->iused, strlen(" iused")); - mwp->ifree = imax(mwp->ifree, strlen("ifree")); - (void)printf(" %*s %*s %%iused", mwp->iused - 2, - "iused", mwp->ifree, "ifree"); + mwp->iused = max(mwp->iused, strlen(" iused")); + mwp->ifree = max(mwp->ifree, strlen("ifree")); + (void)printf(" %*s %*s %%iused", + (u_int)mwp->iused - 2, "iused", + (u_int)mwp->ifree, "ifree"); } (void)printf(" Mounted on\n"); } - (void)printf("%-*s", mwp->mntfrom, sfsp->f_mntfromname); + (void)printf("%-*s", (u_int)mwp->mntfrom, sfsp->f_mntfromname); used = sfsp->f_blocks - sfsp->f_bfree; availblks = sfsp->f_bavail + used; if (hflag) { prthuman(sfsp, used); } else { - (void)printf(" %*ld %*ld %*ld", mwp->total, - fsbtoblk(sfsp->f_blocks, sfsp->f_bsize, blocksize), - mwp->used, fsbtoblk(used, sfsp->f_bsize, blocksize), - mwp->avail, fsbtoblk(sfsp->f_bavail, sfsp->f_bsize, + (void)printf(" %*ld %*ld %*ld", + (u_int)mwp->total, fsbtoblk(sfsp->f_blocks, sfsp->f_bsize, blocksize), + (u_int)mwp->used, fsbtoblk(used, sfsp->f_bsize, blocksize), + (u_int)mwp->avail, fsbtoblk(sfsp->f_bavail, sfsp->f_bsize, blocksize)); } (void)printf(" %5.0f%%", @@ -425,9 +443,10 @@ if (iflag) { inodes = sfsp->f_files; used = inodes - sfsp->f_ffree; - (void)printf(" %*ld %*ld %4.0f%% ", mwp->iused, used, - mwp->ifree, sfsp->f_ffree, inodes == 0 ? 100.0 : - (double)used / (double)inodes * 100.0); + (void)printf(" %*ld %*ld %4.0f%% ", + (u_int)mwp->iused, used, + (u_int)mwp->ifree, sfsp->f_ffree, + inodes == 0 ? 100.0 : (double)used / (double)inodes * 100.0); } else (void)printf(" "); (void)printf(" %s\n", sfsp->f_mntonname); @@ -438,31 +457,31 @@ * the file system specified by `sfsp'. */ static void -update_maxwidths(struct maxwidths *mwp, struct statfs *sfsp) +update_maxwidths(struct maxwidths *mwp, const struct statfs *sfsp) { - static long blocksize; + static long blocksize = 0; int dummy; if (blocksize == 0) getbsize(&dummy, &blocksize); - mwp->mntfrom = imax(mwp->mntfrom, strlen(sfsp->f_mntfromname)); - mwp->total = imax(mwp->total, longwidth(fsbtoblk(sfsp->f_blocks, + mwp->mntfrom = max(mwp->mntfrom, strlen(sfsp->f_mntfromname)); + mwp->total = max(mwp->total, longwidth(fsbtoblk(sfsp->f_blocks, sfsp->f_bsize, blocksize))); - mwp->used = imax(mwp->used, longwidth(fsbtoblk(sfsp->f_blocks - + mwp->used = max(mwp->used, longwidth(fsbtoblk(sfsp->f_blocks - sfsp->f_bfree, sfsp->f_bsize, blocksize))); - mwp->avail = imax(mwp->avail, longwidth(fsbtoblk(sfsp->f_bavail, + mwp->avail = max(mwp->avail, longwidth(fsbtoblk(sfsp->f_bavail, sfsp->f_bsize, blocksize))); - mwp->iused = imax(mwp->iused, longwidth(sfsp->f_files - + mwp->iused = max(mwp->iused, longwidth(sfsp->f_files - sfsp->f_ffree)); - mwp->ifree = imax(mwp->ifree, longwidth(sfsp->f_ffree)); + mwp->ifree = max(mwp->ifree, longwidth(sfsp->f_ffree)); } /* Return the width in characters of the specified long. */ -static int +static size_t longwidth(long val) { - int len; + size_t len; len = 0; /* Negative or zero values require one extra digit. */ @@ -491,7 +510,7 @@ makenetvfslist(void) { char *str, *strptr, **listptr; - struct xvfsconf *xvfsp; + struct xvfsconf *xvfsp, *keep_xvfsp; size_t buflen; int cnt, i, maxvfsconf; @@ -504,14 +523,17 @@ warnx("malloc failed"); return (NULL); } + keep_xvfsp = xvfsp; if (sysctlbyname("vfs.conflist", xvfsp, &buflen, NULL, 0) < 0) { warn("sysctl(vfs.conflist)"); + free(keep_xvfsp); return (NULL); } maxvfsconf = buflen / sizeof(struct xvfsconf); if ((listptr = malloc(sizeof(char*) * maxvfsconf)) == NULL) { warnx("malloc failed"); + free(keep_xvfsp); return (NULL); } @@ -520,6 +542,8 @@ listptr[cnt++] = strdup(xvfsp->vfc_name); if (listptr[cnt-1] == NULL) { warnx("malloc failed"); + free(listptr); + free(keep_xvfsp); return (NULL); } } @@ -531,6 +555,7 @@ if (cnt > 0) warnx("malloc failed"); free(listptr); + free(keep_xvfsp); return (NULL); } @@ -543,6 +568,7 @@ } *(--strptr) = NULL; + free(keep_xvfsp); free(listptr); return (str); } ==== //depot/projects/sio/bin/ed/ed.1#2 (text+ko) ==== @@ -1,4 +1,4 @@ -.\" $FreeBSD: src/bin/ed/ed.1,v 1.32 2002/07/04 13:22:22 ru Exp $ +.\" $FreeBSD: src/bin/ed/ed.1,v 1.33 2003/05/03 20:26:11 keramida Exp $ .Dd May 21, 1993 .Dt ED 1 .Os @@ -394,11 +394,12 @@ .Ar col-elm is a .Em collating element -are interpreted according to -.Xr locale 5 +are interpreted according to the current locale settings (not currently supported). See .Xr regex 3 +and +.Xr re_format 7 for an explanation of these constructs. .It Op ^char-class Match any single character, other than newline, not in ==== //depot/projects/sio/bin/ls/extern.h#2 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * from: @(#)extern.h 8.1 (Berkeley) 5/31/93 - * $FreeBSD: src/bin/ls/extern.h,v 1.20 2002/10/18 10:59:45 tjr Exp $ + * $FreeBSD: src/bin/ls/extern.h,v 1.21 2003/05/03 16:39:33 markm Exp $ */ int acccmp(const FTSENT *, const FTSENT *); @@ -43,11 +43,11 @@ int statcmp(const FTSENT *, const FTSENT *); int revstatcmp(const FTSENT *, const FTSENT *); -void printcol(DISPLAY *); -void printlong(DISPLAY *); +void printcol(const DISPLAY *); +void printlong(const DISPLAY *); int printname(const char *); -void printscol(DISPLAY *); -void printstream(DISPLAY *); +void printscol(const DISPLAY *); +void printstream(const DISPLAY *); void usage(void); size_t len_octal(const char *, int); int prn_octal(const char *); @@ -62,3 +62,4 @@ extern char *attrs_off; extern char *enter_bold; #endif +extern int termwidth; ==== //depot/projects/sio/bin/ls/ls.c#2 (text+ko) ==== @@ -46,7 +46,7 @@ #endif /* not lint */ #endif #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/bin/ls/ls.c,v 1.73 2003/04/26 02:31:26 rwatson Exp $"); +__FBSDID("$FreeBSD: src/bin/ls/ls.c,v 1.74 2003/05/03 16:39:33 markm Exp $"); #include <sys/types.h> #include <sys/stat.h> @@ -58,6 +58,7 @@ #include <errno.h> #include <fts.h> #include <grp.h> +#include <inttypes.h> #include <limits.h> #include <locale.h> #include <pwd.h> @@ -80,12 +81,26 @@ */ #define STRBUF_SIZEOF(t) (1 + CHAR_BIT * sizeof(t) / 3 + 1) -static void display(FTSENT *, FTSENT *, int); -static u_quad_t makenines(u_long); +/* + * MAKENINES(n) turns n into (10**n)-1. This is useful for converting a width + * into a number that wide in decimal. + * XXX: Overflows are not considered. + */ +#define MAKENINES(n) \ + do { \ + intmax_t i; \ + \ + /* Use a loop as all values of n are small. */ \ + for (i = 1; n > 0; i *= 10) \ + n--; \ + n = i - 1; \ + } while(0) + +static void display(const FTSENT *, FTSENT *, int); static int mastercmp(const FTSENT * const *, const FTSENT * const *); static void traverse(int, char **, int); -static void (*printfcn)(DISPLAY *); +static void (*printfcn)(const DISPLAY *); static int (*sortfcn)(const FTSENT *, const FTSENT *); long blocksize; /* block size units */ @@ -114,7 +129,7 @@ int f_slash; /* similar to f_type, but only for dirs */ int f_sortacross; /* sort across rows, not down columns */ int f_statustime; /* use time of last mode change */ - int f_stream; /* stream the output, separate with commas */ +static int f_stream; /* stream the output, separate with commas */ static int f_timesort; /* sort by time vice name */ int f_type; /* add type character for non-regular files */ static int f_whiteout; /* show whiteout entries */ @@ -473,10 +488,10 @@ */ if (output) { putchar('\n'); - printname(p->fts_path); + (void)printname(p->fts_path); puts(":"); } else if (argc > 1) { - printname(p->fts_path); + (void)printname(p->fts_path); puts(":"); output = 1; } @@ -499,14 +514,15 @@ * points to the parent directory of the display list. */ static void -display(FTSENT *p, FTSENT *list, int options) +display(const FTSENT *p, FTSENT *list, int options) { struct stat *sp; DISPLAY d; FTSENT *cur; NAMES *np; off_t maxsize; - u_long btotal, labelstrlen, maxblock, maxinode, maxlen, maxnlink; + long maxblock; + u_long btotal, labelstrlen, maxinode, maxlen, maxnlink; u_long maxlabelstr; int bcfile, maxflags; gid_t maxgroup; @@ -542,9 +558,10 @@ int ninitmax; /* Fill-in "::" as "0:0:0" for the sake of scanf. */ - jinitmax = initmax2 = malloc(strlen(initmax) * 2 + 2); + jinitmax = malloc(strlen(initmax) * 2 + 2); if (jinitmax == NULL) err(1, "malloc"); + initmax2 = jinitmax; if (*initmax == ':') strcpy(initmax2, "0:"), initmax2 += 2; else @@ -563,7 +580,7 @@ strcpy(initmax2, "0"); ninitmax = sscanf(jinitmax, - " %lu : %lu : %lu : %i : %i : %i : %llu : %lu : %lu ", + " %lu : %ld : %lu : %u : %u : %i : %jd : %lu : %lu ", &maxinode, &maxblock, &maxnlink, &maxuser, &maxgroup, &maxflags, &maxsize, &maxlen, &maxlabelstr); f_notabs = 1; @@ -603,10 +620,10 @@ default: break; } - maxinode = makenines(maxinode); - maxblock = makenines(maxblock); - maxnlink = makenines(maxnlink); - maxsize = makenines(maxsize); + MAKENINES(maxinode); + MAKENINES(maxblock); + MAKENINES(maxnlink); + MAKENINES(maxsize); } bcfile = 0; flags = NULL; @@ -787,7 +804,7 @@ d.s_inode = strlen(buf); (void)snprintf(buf, sizeof(buf), "%lu", maxnlink); d.s_nlink = strlen(buf); - (void)snprintf(buf, sizeof(buf), "%qu", maxsize); + (void)snprintf(buf, sizeof(buf), "%ju", maxsize); d.s_size = strlen(buf); d.s_user = maxuser; } @@ -829,22 +846,3 @@ } return (sortfcn(*a, *b)); } - -/* - * Makenines() returns (10**n)-1. This is useful for converting a width - * into a number that wide in decimal. - */ -static u_quad_t -makenines(u_long n) -{ - u_long i; - u_quad_t reg; - - reg = 1; - /* Use a loop instead of pow(), since all values of n are small. */ - for (i = 0; i < n; i++) - reg *= 10; - reg--; - - return reg; -} ==== //depot/projects/sio/bin/ls/print.c#2 (text+ko) ==== @@ -40,7 +40,7 @@ #endif /* not lint */ #endif #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/bin/ls/print.c,v 1.64 2002/12/19 01:13:23 tjr Exp $"); +__FBSDID("$FreeBSD: src/bin/ls/print.c,v 1.65 2003/05/03 16:39:33 markm Exp $"); #include <sys/param.h> #include <sys/stat.h> @@ -65,7 +65,7 @@ #include "ls.h" #include "extern.h" -static int printaname(FTSENT *, u_long, u_long); +static int printaname(const FTSENT *, u_long, u_long); static void printlink(const FTSENT *); static void printtime(time_t); static int printtype(u_int); @@ -74,7 +74,7 @@ static void endcolor(int); static int colortype(mode_t); #endif -static void aclmode(char *, FTSENT *, int *); +static void aclmode(char *, const FTSENT *, int *); #define IS_NOPRINT(p) ((p)->fts_number == NO_PRINT) @@ -128,7 +128,7 @@ #endif void -printscol(DISPLAY *dp) +printscol(const DISPLAY *dp) { FTSENT *p; @@ -155,7 +155,7 @@ } void -printlong(DISPLAY *dp) +printlong(const DISPLAY *dp) { struct stat *sp; FTSENT *p; @@ -179,7 +179,7 @@ if (f_inode) (void)printf("%*lu ", dp->s_inode, (u_long)sp->st_ino); if (f_size) - (void)printf("%*lld ", + (void)printf("%*jd ", dp->s_block, howmany(sp->st_blocks, blocksize)); strmode(sp->st_mode, buf); /* @@ -207,7 +207,7 @@ (void)printf("%3d, %3d ", major(sp->st_rdev), minor(sp->st_rdev)); else if (dp->bcfile) - (void)printf("%*s%*lld ", + (void)printf("%*s%*jd ", 8 - dp->s_size, "", dp->s_size, sp->st_size); else printsize(dp->s_size, sp->st_size); @@ -235,10 +235,9 @@ } void -printstream(DISPLAY *dp) +printstream(const DISPLAY *dp) { FTSENT *p; - extern int termwidth; int chcnt; for (p = dp->list, chcnt = 0; p; p = p->fts_link) { @@ -260,9 +259,8 @@ } void -printcol(DISPLAY *dp) +printcol(const DISPLAY *dp) { - extern int termwidth; static FTSENT **array; static int lastentries = -1; FTSENT *p; @@ -352,7 +350,7 @@ * return # of characters printed, no trailing characters. */ static int -printaname(FTSENT *p, u_long inodefield, u_long sizefield) +printaname(const FTSENT *p, u_long inodefield, u_long sizefield) { struct stat *sp; int chcnt; @@ -365,7 +363,7 @@ if (f_inode) chcnt += printf("%*lu ", (int)inodefield, (u_long)sp->st_ino); if (f_size) - chcnt += printf("%*lld ", + chcnt += printf("%*jd ", (int)sizefield, howmany(sp->st_blocks, blocksize)); #ifdef COLORLS if (f_color) @@ -385,7 +383,7 @@ printtime(time_t ftime) { char longstring[80]; - static time_t now; + static time_t now = 0; const char *format; static int d_first = -1; @@ -457,7 +455,7 @@ static int writech(int c) { - char tmp = c; + char tmp = (char)c; (void)write(STDOUT_FILENO, &tmp, 1); return 0; @@ -518,6 +516,7 @@ case S_IFCHR: printcolor(C_CHR); return (1); + default:; } if (mode & (S_IXUSR | S_IXGRP | S_IXOTH)) { if (mode & S_ISUID) @@ -543,10 +542,10 @@ if (cs == NULL) cs = ""; /* LSCOLORS not set */ len = strlen(cs); - for (i = 0; i < C_NUMCOLORS; i++) { + for (i = 0; i < (int)C_NUMCOLORS; i++) { colors[i].bold = 0; - if (len <= 2 * i) { + if (len <= 2 * (size_t)i) { c[0] = defcolors[2 * i]; c[1] = defcolors[2 * i + 1]; } else { @@ -568,7 +567,7 @@ else if (c[j] >= 'A' && c[j] <= 'H') { colors[i].num[j] = c[j] - 'A'; colors[i].bold = 1; - } else if (tolower((unsigned char)c[j] == 'x')) + } else if (tolower((unsigned char)c[j]) == 'x') colors[i].num[j] = -1; else { warnx("invalid character '%c' in LSCOLORS" @@ -622,12 +621,12 @@ unit = unit_adjust(&dbytes); if (dbytes == 0) - (void)printf("%*s ", width, "0B"); + (void)printf("%*s ", (u_int)width, "0B"); else - (void)printf("%*.*f%c ", width - 1, dbytes > 10 ? 0 : 1, - dbytes, "BKMGTPE"[unit]); + (void)printf("%*.*f%c ", (u_int)width - 1, + dbytes > 10 ? 0 : 1, dbytes, "BKMGTPE"[unit]); } else - (void)printf("%*lld ", width, bytes); + (void)printf("%*jd ", (u_int)width, bytes); } /* @@ -658,7 +657,7 @@ } static void -aclmode(char *buf, FTSENT *p, int *haveacls) +aclmode(char *buf, const FTSENT *p, int *haveacls) { char name[MAXPATHLEN + 1]; int entries, ret; ==== //depot/projects/sio/bin/ls/util.c#2 (text+ko) ==== @@ -39,8 +39,8 @@ static char sccsid[] = "@(#)util.c 8.3 (Berkeley) 4/2/94"; #endif /* not lint */ #endif -#include <sys/types.h> -__FBSDID("$FreeBSD: src/bin/ls/util.c,v 1.30 2002/06/30 05:13:54 obrien Exp $"); +#include <sys/cdefs.h> +__FBSDID("$FreeBSD: src/bin/ls/util.c,v 1.31 2003/05/03 16:39:33 markm Exp $"); #include <sys/types.h> #include <sys/stat.h> ==== //depot/projects/sio/bin/pax/ar_io.c#2 (text+ko) ==== @@ -41,7 +41,7 @@ #endif #endif /* not lint */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/bin/pax/ar_io.c,v 1.22 2003/01/01 18:48:39 schweikh Exp $"); +__FBSDID("$FreeBSD: src/bin/pax/ar_io.c,v 1.23 2003/05/03 16:39:33 markm Exp $"); #include <sys/types.h> #include <sys/ioctl.h> @@ -69,8 +69,10 @@ #define EXT_MODE O_RDONLY /* open mode for list/extract */ #define AR_MODE (O_WRONLY | O_CREAT | O_TRUNC) /* mode for archive */ #define APP_MODE O_RDWR /* mode for append */ -#define STDO "<STDOUT>" /* pseudo name for stdout */ -#define STDN "<STDIN>" /* pseudo name for stdin */ + +static char none[] = "<NONE>"; /* pseudo name for no file */ +static char stdo[] = "<STDOUT>"; /* pseudo name for stdout */ +static char stdn[] = "<STDIN>"; /* pseudo name for stdin */ static int arfd = -1; /* archive file descriptor */ static int artyp = ISREG; /* archive type: file/FIFO/tape */ static int arvol = 1; /* archive volume number */ @@ -82,7 +84,7 @@ static int invld_rec; /* tape has out of spec record size */ static int wr_trail = 1; /* trailer was rewritten in append */ static int can_unlnk = 0; /* do we unlink null archives? */ -char *arcname; /* printable name of archive */ +const char *arcname; /* printable name of archive */ const char *gzip_program; /* name of gzip program */ static pid_t zpid = -1; /* pid of child process */ @@ -100,7 +102,7 @@ */ int -ar_open(char *name) +ar_open(const char *name) { struct mtget mb; @@ -119,7 +121,7 @@ case EXTRACT: if (name == NULL) { arfd = STDIN_FILENO; - arcname = STDN; + arcname = stdn; } else if ((arfd = open(name, EXT_MODE, DMOD)) < 0) syswarn(0, errno, "Failed open to read on %s", name); if (arfd != -1 && gzip_program != NULL) >>> TRUNCATED FOR MAIL (1000 lines) <<<
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200305032207.h43M7nV2083998>