diff options
author | Guy Harris <guy@alum.mit.edu> | 2014-10-09 16:44:15 -0700 |
---|---|---|
committer | Guy Harris <guy@alum.mit.edu> | 2014-10-09 23:45:30 +0000 |
commit | 45e462985db891248ffcb9db21e6b66733de0b84 (patch) | |
tree | 90d031f9769c07abaea83330a58dd9d3933eb7b1 /wiretap/mp2t.c | |
parent | 112c90a04b778958985b02b9663743cea1039f47 (diff) |
Use an enum for the open-routine return value, as per Evan Huus's suggestion.
Clean up some things we ran across while making those changes.
Change-Id: Ic0d8943d36e6e120d7af0a6148fad98015d1e83e
Reviewed-on: https://code.wireshark.org/review/4581
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Diffstat (limited to 'wiretap/mp2t.c')
-rw-r--r-- | wiretap/mp2t.c | 27 |
1 files changed, 12 insertions, 15 deletions
diff --git a/wiretap/mp2t.c b/wiretap/mp2t.c index 72e566c0d6..da82a2c809 100644 --- a/wiretap/mp2t.c +++ b/wiretap/mp2t.c @@ -140,7 +140,7 @@ mp2t_seek_read(wtap *wth, gint64 seek_off, struct wtap_pkthdr *phdr, return TRUE; } -int +wtap_open_return_val mp2t_open(wtap *wth, int *err, gchar **err_info) { guint8 buffer[MP2T_SIZE+TRAILER_LEN_MAX]; @@ -153,8 +153,8 @@ mp2t_open(wtap *wth, int *err, gchar **err_info) if (!wtap_read_bytes(wth->fh, buffer, MP2T_SIZE, err, err_info)) { if (*err != WTAP_ERR_SHORT_READ) - return -1; - return 0; + return WTAP_OPEN_ERROR; + return WTAP_OPEN_NOT_MINE; } first = -1; @@ -165,18 +165,18 @@ mp2t_open(wtap *wth, int *err, gchar **err_info) } } if (-1 == first) { - return 0; /* wrong file type - not an mpeg2 ts file */ + return WTAP_OPEN_NOT_MINE; /* wrong file type - not an mpeg2 ts file */ } if (-1 == file_seek(wth->fh, first, SEEK_SET, err)) { - return -1; + return WTAP_OPEN_ERROR; } /* read some packets and make sure they all start with a sync byte */ do { if (!wtap_read_bytes(wth->fh, buffer, MP2T_SIZE+trailer_len, err, err_info)) { if (*err != WTAP_ERR_SHORT_READ) - return -1; /* read error */ - if(sync_steps<2) return 0; /* wrong file type - not an mpeg2 ts file */ + return WTAP_OPEN_ERROR; /* read error */ + if(sync_steps<2) return WTAP_OPEN_NOT_MINE; /* wrong file type - not an mpeg2 ts file */ break; /* end of file, that's ok if we're still in sync */ } if (buffer[0] == MP2T_SYNC_BYTE) { @@ -189,14 +189,14 @@ mp2t_open(wtap *wth, int *err, gchar **err_info) /* if we've already detected a trailer field, we must remain in sync another mismatch means we have no mpeg2 ts file */ if (trailer_len>0) - return 0; + return WTAP_OPEN_NOT_MINE; /* check if a trailer is appended to the packet */ for (i=0; i<TRAILER_LEN_MAX; i++) { if (buffer[i] == MP2T_SYNC_BYTE) { trailer_len = i; if (-1 == file_seek(wth->fh, first, SEEK_SET, err)) { - return -1; + return WTAP_OPEN_ERROR; } sync_steps = 0; break; @@ -204,12 +204,12 @@ mp2t_open(wtap *wth, int *err, gchar **err_info) } /* no sync byte found in the vicinity, this is no mpeg2 ts file */ if (i==TRAILER_LEN_MAX) - return 0; + return WTAP_OPEN_NOT_MINE; } } while (sync_steps < SYNC_STEPS); if (-1 == file_seek(wth->fh, first, SEEK_SET, err)) { - return -1; + return WTAP_OPEN_ERROR; } wth->file_type_subtype = WTAP_FILE_TYPE_SUBTYPE_MPEG_2_TS; @@ -220,13 +220,10 @@ mp2t_open(wtap *wth, int *err, gchar **err_info) wth->snapshot_length = 0; mp2t = (mp2t_filetype_t*) g_malloc(sizeof(mp2t_filetype_t)); - if (NULL == mp2t) { - return -1; - } wth->priv = mp2t; mp2t->start_offset = first; mp2t->trailer_len = trailer_len; - return 1; + return WTAP_OPEN_MINE; } |