예제 #1
0
uint8_t extcap_base_handle_interface(extcap_parameters * extcap)
{
    /* A fifo must be provided for capture */
    if (extcap->capture && (extcap->fifo == NULL || strlen(extcap->fifo) <= 0)) {
        extcap->capture = 0;
        g_error("Extcap Error: No FIFO pipe provided");
        return 0;
    }

    if (extcap->do_list_interfaces) {
        return extcap_iface_listall(extcap, 1);
    } else if (extcap->do_version || extcap->do_list_dlts) {
        return extcap_iface_listall(extcap, 0);
    }

    return 0;
}
예제 #2
0
uint8_t extcap_base_handle_interface(extcap_parameters * extcap)
{
    /* A fifo must be provided for capture */
    if (extcap->capture && (extcap->fifo == NULL || strlen(extcap->fifo) <= 0)) {
	extcap->capture = 0;
	errmsg_print("Extcap Error: No FIFO pipe provided");
	return 0;
    }

    if (extcap->do_list_interfaces) {
	return extcap_iface_listall(extcap, 1);
    } else if (extcap->do_version || extcap->do_list_dlts) {
	return extcap_iface_listall(extcap, 0);
    } else {
	/* An interface must exist */
	if (g_list_find_custom(extcap->interfaces, extcap->interface, extcap_iface_compare) == NULL) {
	    errmsg_print("Extcap Error: No interface [%s] provided", extcap->interface);
	    return 0;
	}
    }

    return 0;
}