Fingerprint Functions
The fingerprinting functionality, including all network discussions and database lookups, exists within the following two functions.
int libsf_active_id(libsf_t *s);
libsf _active_id () performs an active fingerprint test against the target host that s references. Each of the seven active fingerprint tests described previously executes.If you initialize libsf with LIBSF_CTRL_VERBOSE, libsf will dump verbose debugging information about each of the tests.
int libsf_passive_id(libsf_t *s);
libsf_passive_id() starts the passive fingerprinting engine for the libsf session that s references. If a target host was specified at initialization, libsf _passive_id () sleeps for the timeout-waiting for a TCP SYN packet from that host. If no target host is specified, the function returns the first match that it finds unless the timer expires.