X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=cpmchmod.c;h=a917ae754400bdb0c32b06c9605ec3eb3420c462;hb=1f63e0639206e2b1d2757860fcbe77a86f3aaa3a;hp=76b70a96011257fda2a518be45d0b0da7ad8d719;hpb=eecb0a54d7bbb6d7f1085cad3e663164baad4c4f;p=debian%2Fcpmtools diff --git a/cpmchmod.c b/cpmchmod.c index 76b70a9..a917ae7 100644 --- a/cpmchmod.c +++ b/cpmchmod.c @@ -9,10 +9,6 @@ #include "getopt_.h" #include "cpmfs.h" - -#ifdef USE_DMALLOC -#include -#endif /*}}}*/ const char cmd[]="cpmchmod"; @@ -24,6 +20,7 @@ int main(int argc, char *argv[]) /*{{{*/ const char *image; const char *format; const char *devopts=NULL; + int uppercase=0; int c,i,usage=0,exitcode=0; struct cpmSuperBlock drive; struct cpmInode root; @@ -34,10 +31,11 @@ int main(int argc, char *argv[]) /*{{{*/ /* parse options */ /*{{{*/ if (!(format=getenv("CPMTOOLSFMT"))) format=FORMAT; - while ((c=getopt(argc,argv,"T:f:h?"))!=EOF) switch(c) + while ((c=getopt(argc,argv,"T:f:uh?"))!=EOF) switch(c) { case 'T': devopts=optarg; break; case 'f': format=optarg; break; + case 'u': uppercase=1; break; case 'h': case '?': usage=1; break; } @@ -51,17 +49,21 @@ int main(int argc, char *argv[]) /*{{{*/ if (usage) { - fprintf(stderr,"Usage: %s [-f format] image mode pattern ...\n",cmd); + fprintf(stderr,"Usage: %s [-f format] [-u] image mode pattern ...\n",cmd); exit(1); } /*}}}*/ /* open image */ /*{{{*/ if ((err=Device_open(&drive.dev, image, O_RDWR, devopts))) { - fprintf(stderr,"%s: can not open %s (%s)\n",cmd,image,err); + fprintf(stderr,"%s: cannot open %s (%s)\n",cmd,image,err); + exit(1); + } + if (cpmReadSuper(&drive,&root,format,uppercase)==-1) + { + fprintf(stderr,"%s: cannot read superblock (%s)\n",cmd,boo); exit(1); } - cpmReadSuper(&drive,&root,format); /*}}}*/ cpmglob(optind,argc,argv,&root,&gargc,&gargv); for (i=0; i