chiark / gitweb /
cdrom_id: fix segfault
[elogind.git] / extras / cdrom_id / cdrom_id.c
index b88f5b4b1e0748f9729ce002d8ccd0d88d74206a..e0cbe9e71321d3e5640067a01f22941971129074 100644 (file)
@@ -469,6 +469,8 @@ static int cd_media_toc(int fd)
        info("READ TOC: len: %d\n", len);
        if (len > sizeof(toc))
                return -1;
+       if (len < 8)
+               return -1;
 
        /* check if we have a data track */
        info("ctl %02x (0x04 is data/audio)\n", header[5]);
@@ -538,8 +540,9 @@ int main(int argc, char *argv[])
                        break;
                case 'h':
                        printf("Usage: cdrom_id [options] <device>\n"
-                           " --export        export key/value pairs\n"
-                           " --help\n\n");
+                              "  --export        export key/value pairs\n"
+                              "  --debug         debug to stderr\n"
+                              "  --help          print this help text\n\n");
                        goto exit;
                default:
                        rc = 1;