Date: Tue, 22 Oct 2013 21:38:29 GMT From: dpl@FreeBSD.org To: svn-soc-all@FreeBSD.org Subject: socsvn commit: r258791 - soc2013/dpl/head/usr.bin/bsdiff/bspatch Message-ID: <201310222138.r9MLcTW8058510@socsvn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: dpl Date: Tue Oct 22 21:38:29 2013 New Revision: 258791 URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=258791 Log: Use only one rights variable, and use the fd's names of the manual page. Modified: soc2013/dpl/head/usr.bin/bsdiff/bspatch/bspatch.c Modified: soc2013/dpl/head/usr.bin/bsdiff/bspatch/bspatch.c ============================================================================== --- soc2013/dpl/head/usr.bin/bsdiff/bspatch/bspatch.c Tue Oct 22 20:58:23 2013 (r258790) +++ soc2013/dpl/head/usr.bin/bsdiff/bspatch/bspatch.c Tue Oct 22 21:38:29 2013 (r258791) @@ -23,8 +23,8 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. */ -__FBSDID("$FreeBSD$"); #include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); #include <sys/capability.h> #include <bzlib.h> @@ -70,15 +70,15 @@ off_t ctrl[3]; off_t lenread; off_t i; - int first, second; - cap_rights_t firstr, secondr, patchr, bzfiler; + int oldfd, newfd; + cap_rights_t rights; if(argc!=4) errx(1,"usage: %s oldfile newfile patchfile\n",argv[0]); /* Capsicum */ - if ((first = open(argv[1],O_RDONLY|O_BINARY,0)) < 0) + if ((oldfd = open(argv[1],O_RDONLY|O_BINARY,0)) < 0) err(1,"%s",argv[1]); - if ((second = open(argv[2],O_CREAT|O_TRUNC|O_WRONLY|O_BINARY,0666)) < 0) + if ((newfd = open(argv[2],O_CREAT|O_TRUNC|O_WRONLY|O_BINARY,0666)) < 0) err(1,"%s",argv[1]); /* Open patch file */ if ((f = fopen(argv[3], "rb")) == NULL) @@ -90,22 +90,19 @@ if ((epf = fopen(argv[3], "rb")) == NULL) err(1, "fopen(%s)", argv[3]); - cap_rights_init(&firstr, CAP_READ, CAP_SEEK); - cap_rights_init(&secondr, CAP_WRITE); - cap_rights_init(&patchr, CAP_READ, CAP_SEEK); - cap_rights_init(&bzfiler, CAP_READ, CAP_SEEK); - - if (cap_rights_limit(first, &firstr) < 0 && errno != ENOSYS) + cap_rights_init(&rights, CAP_WRITE); + if (cap_rights_limit(newfd, &rights) < 0 && errno != ENOSYS) err(1, "Couldn't limit fd"); - if (cap_rights_limit(second, &secondr) < 0 && errno != ENOSYS) + cap_rights_init(&rights, CAP_READ, CAP_SEEK); + if (cap_rights_limit(oldfd, &rights) < 0 && errno != ENOSYS) err(1, "Couldn't limit fd"); - if (cap_rights_limit(fileno(f), &patchr) < 0 && errno != ENOSYS) + if (cap_rights_limit(fileno(f), &rights) < 0 && errno != ENOSYS) err(1, "Couldn't limit fd"); - if (cap_rights_limit(fileno(cpf), &bzfiler) < 0 && errno != ENOSYS) + if (cap_rights_limit(fileno(cpf), &rights) < 0 && errno != ENOSYS) err(1, "Couldn't limit fd"); - if (cap_rights_limit(fileno(dpf), &bzfiler) < 0 && errno != ENOSYS) + if (cap_rights_limit(fileno(dpf), &rights) < 0 && errno != ENOSYS) err(1, "Couldn't limit fd"); - if (cap_rights_limit(fileno(epf), &bzfiler) < 0 && errno != ENOSYS) + if (cap_rights_limit(fileno(epf), &rights) < 0 && errno != ENOSYS) err(1, "Couldn't limit fd"); if (cap_enter() < 0 && errno != ENOSYS) @@ -162,11 +159,11 @@ if ((epfbz2 = BZ2_bzReadOpen(&ebz2err, epf, 0, 0, NULL, 0)) == NULL) errx(1, "BZ2_bzReadOpen, bz2err = %d", ebz2err); - if(((oldsize=lseek(first,0,SEEK_END))==-1) || + if(((oldsize=lseek(oldfd,0,SEEK_END))==-1) || ((old=malloc(oldsize+1))==NULL) || - (lseek(first,0,SEEK_SET)!=0) || - (read(first,old,oldsize)!=oldsize) || - (close(first)==-1)) err(1,"%s",argv[1]); + (lseek(oldfd,0,SEEK_SET)!=0) || + (read(oldfd,old,oldsize)!=oldsize) || + (close(oldfd)==-1)) err(1,"%s",argv[1]); if((new=malloc(newsize+1))==NULL) err(1,NULL); oldpos=0;newpos=0; @@ -222,7 +219,7 @@ err(1, "fclose(%s)", argv[3]); /* Write the new file */ - if((write(second,new,newsize)!=newsize) || (close(second)==-1)) + if((write(newfd,new,newsize)!=newsize) || (close(newfd)==-1)) err(1,"%s",argv[2]); free(new);
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201310222138.r9MLcTW8058510>