path_trace);
fd_pairs->pair[fd_pairs->num_pairs-1].trace =
- open(path_trace, O_WRONLY|O_APPEND,
+ open(path_trace, O_WRONLY,
S_IRWXU|S_IRWXG|S_IRWXO);
-
if(fd_pairs->pair[fd_pairs->num_pairs-1].trace == -1) {
perror(path_trace);
}
+ ret = lseek(fd_pairs->pair[fd_pairs->num_pairs-1].trace,
+ 0, SEEK_END);
+ if (ret < 0) {
+ perror(path_trace);
+ }
} else {
printf("File %s exists, cannot open. Try append mode.\n", path_trace);
open_ret = -1;
if(ret = open_channel_trace_pairs(channel_name, trace_name, &fd_pairs,
&inotify_fd, &inotify_watch_array))
goto close_channel;
-
+ if (fd_pairs.num_pairs == 0) {
+ printf("No channel available for reading, exiting\n");
+ ret = -ENOENT;
+ goto close_channel;
+ }
if(ret = map_channels(&fd_pairs, 0, fd_pairs.num_pairs))
goto close_channel;
return 0;