Be more portable when opening stdin.
Refactor reading from VFile into a function.
+char *get_next_file(FILE *VFile, char *ptr) {
+ char *ret;
+
+ ret = fgets(ptr, NAME_MAX, VFile);
+ if (!ret)
+ return NULL;
+
+ if (ptr[strlen(ptr) - 1] == '\n')
+ ptr[strlen(ptr) - 1] = '\0';
+
+ return ret;
+}
+
int
main(int argc, char **argv)
{
int
main(int argc, char **argv)
{
#endif /* WIN32 */
if (VFileName != NULL) {
if (VFileName[0] == '-' && VFileName[1] == '\0')
#endif /* WIN32 */
if (VFileName != NULL) {
if (VFileName[0] == '-' && VFileName[1] == '\0')
- VFile = fopen("/dev/stdin", "r");
else
VFile = fopen(VFileName, "r");
if (VFile == NULL)
error("Unable to open file: %s\n", strerror(errno));
else
VFile = fopen(VFileName, "r");
if (VFile == NULL)
error("Unable to open file: %s\n", strerror(errno));
- ret = fgets(VFileLine, NAME_MAX, VFile);
+ ret = get_next_file(VFile, VFileLine);
- error("Nothing in %s\n", VFile);
-
- if (VFileLine[strlen(VFileLine) - 1] == '\n')
- VFileLine[strlen(VFileLine) - 1] = '\0';
+ error("Nothing in %s\n", VFileName);
}
pcap_close(pd);
if (VFileName != NULL) {
}
pcap_close(pd);
if (VFileName != NULL) {
- ret = fgets(VFileLine, NAME_MAX, VFile);
+ ret = get_next_file(VFile, VFileLine);
- if (VFileLine[strlen(VFileLine) - 1] == '\n')
- VFileLine[strlen(VFileLine) - 1] = '\0';
RFileName = VFileLine;
pd = pcap_open_offline(RFileName, ebuf);
if (pd == NULL)
RFileName = VFileLine;
pd = pcap_open_offline(RFileName, ebuf);
if (pd == NULL)