/* Starts a DAG input trace */ static int dag_start_input(libtrace_t *libtrace) { if(dag_start(FORMAT_DATA->fd) < 0) { trace_set_err(libtrace,errno,"Cannot start DAG %s", libtrace->uridata); return -1; } /* Flush the memory hole */ while(dag_available(libtrace) != 0) FORMAT_DATA->diff = 0; FORMAT_DATA->drops = 0; return 0; }
static int dagcapture_init(struct dag_context* cap){ int saved; if ( cap->buffer == MAP_FAILED ){ saved = errno; logmsg(stderr, CAPTURE, "dag_mmap() returned %d: %s\n", saved, strerror(saved)); return saved; } if ( dag_start(cap->fd) != 0 ){ saved = errno; logmsg(stderr, CAPTURE, "dag_start() returned %d: %s\n", saved, strerror(saved)); return saved; } return 0; }