[Bug 203940] makefs: Coverity CID 976847: Delayed error with output file type

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Wed Oct 21 18:15:12 UTC 2015


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=203940

            Bug ID: 203940
           Summary: makefs: Coverity CID 976847: Delayed error with output
                    file type
           Product: Base System
           Version: 11.0-CURRENT
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: bin
          Assignee: freebsd-bugs at FreeBSD.org
          Reporter: scdbackup at gmx.net

usr.sbin/makefs/cd9660/cd9660_write.c

CID 976847 (#1 of 1): Argument cannot be negative (NEGATIVE_RETURNS)
   4. negative_returns: curpos is passed to a parameter that cannot be
   negative. [Note: The source code implementation of the function hasi
   been overridden by a builtin model.]

406        curpos = ftello(fd);

413        if (fseeko(fd, curpos, SEEK_SET) == -1)

--------------- Source analysis:

This gesture lacks of an error check. The fseeko() call has one

413        if (fseeko(fd, curpos, SEEK_SET) == -1)
414                err(1, "fseeko");

It is not easy to imagine how a file pointer which is not suitable for
ftello() should get here, as makefs obviously is not prepared for
sequential output.

--------------- Remedy proposal:

It cannot harm to show the user the direct error cause and not
an error of the subsequent fseeko(SEEK_SET).

         curpos = ftello(fd);
+        if (curpos < 0)
+                err(1, "ftello");

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-bugs mailing list