ec_fingerprint.h (ettercap-0.8.3) | : | ec_fingerprint.h (ettercap-0.8.3.1) | ||
---|---|---|---|---|
#ifndef ETTERCAP_FINGERPRINT_H | #ifndef ETTERCAP_FINGERPRINT_H | |||
#define ETTERCAP_FINGERPRINT_H | #define ETTERCAP_FINGERPRINT_H | |||
EC_API_EXTERN int fingerprint_init(void); | EC_API_EXTERN int fingerprint_init(void); | |||
EC_API_EXTERN int fingerprint_search(const char *f, char *dst); | EC_API_EXTERN int fingerprint_search(const char *f, char *dst); | |||
EC_API_EXTERN void fingerprint_default(char *finger); | EC_API_EXTERN void fingerprint_default(char *finger); | |||
EC_API_EXTERN void fingerprint_push(char *finger, int param, int value); | EC_API_EXTERN void fingerprint_push(char *finger, int param, int value); | |||
EC_API_EXTERN u_int8 TTL_PREDICTOR(u_int8 x); | EC_API_EXTERN u_int8 TTL_PREDICTOR(u_int8 x); | |||
EC_API_EXTERN int fingerprint_submit(const char *finger, char *os); | EC_API_EXTERN int fingerprint_submit(char* host, char* page, const char *finger, | |||
const char *os); | ||||
#define DEFAULT_HOST "https://www.ettercap-project.org" | ||||
#define DEFAULT_PAGE "fingerprint.php" | ||||
/* | /* | |||
* The fingerprint database has the following structure: | * The fingerprint database has the following structure: | |||
* | * | |||
* WWWW:MSS:TTL:WS:S:N:D:T:F:LEN:OS | * WWWW:MSS:TTL:WS:S:N:D:T:F:LEN:OS | |||
* | * | |||
* WWWW: 4 digit hex field indicating the TCP Window Size | * WWWW: 4 digit hex field indicating the TCP Window Size | |||
* MSS : 4 digit hex field indicating the TCP Option Maximum Segment Size | * MSS : 4 digit hex field indicating the TCP Option Maximum Segment Size | |||
* if omitted in the packet or unknown it is "_MSS" | * if omitted in the packet or unknown it is "_MSS" | |||
* TTL : 2 digit hex field indicating the IP Time To Live | * TTL : 2 digit hex field indicating the IP Time To Live | |||
skipping to change at line 37 | skipping to change at line 40 | |||
* S = SYN | * S = SYN | |||
* A = SYN + ACK | * A = SYN + ACK | |||
* LEN : 2 digit hex field indicating the length of the packet | * LEN : 2 digit hex field indicating the length of the packet | |||
* if irrilevant or unknown it is "LT" | * if irrilevant or unknown it is "LT" | |||
* OS : an ascii string representing the OS | * OS : an ascii string representing the OS | |||
*/ | */ | |||
enum { | enum { | |||
FINGER_LEN = 28, | FINGER_LEN = 28, | |||
OS_LEN = 60, | OS_LEN = 60, | |||
HOST_LEN = 100, | ||||
PAGE_LEN = 100, | ||||
FINGER_WINDOW = 0, | FINGER_WINDOW = 0, | |||
FINGER_MSS = 5, | FINGER_MSS = 5, | |||
FINGER_TTL = 10, | FINGER_TTL = 10, | |||
FINGER_WS = 13, | FINGER_WS = 13, | |||
FINGER_SACK = 16, | FINGER_SACK = 16, | |||
FINGER_NOP = 18, | FINGER_NOP = 18, | |||
FINGER_DF = 20, | FINGER_DF = 20, | |||
FINGER_TIMESTAMP = 22, | FINGER_TIMESTAMP = 22, | |||
FINGER_TCPFLAG = 24, | FINGER_TCPFLAG = 24, | |||
FINGER_LT = 26, | FINGER_LT = 26, | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 7 lines changed or added |