我無法爲我的生活編譯這個舊代碼。我試圖用它來測試客戶端的外部漏洞。我已經在FreeBSD 11上運行並使用gcc進行編譯。任何想法,爲什麼我得到這個錯誤?無法編譯ecepass.c
int in_cksum(u_short *addr, int len)
{
int sum;
int nleft;
u_short ans;
u_short *w;
sum = 0;
ans = 0;
nleft = len;
w = addr;
while (nleft > 1) {
sum += *w++;
nleft -= 2;
}
if (nleft == 1) {
*(u_char *)(&ans) = *(u_char *)w;
sum += ans;
}
return (sum);
}
全部代碼在這裏:https://pastebin.com/MGSYycmB
錯誤:
In file included from ecepass.c:8:0: ecepass.c:72:5: error: expected declaration specifiers or '...' before numeric constant int in_cksum(u_short *addr, int len)
我認爲你忘了包括一些東西......開玩笑 – Stargateur
@ Stargateur你看過完整的源代碼嗎?他幾乎包括*一切* :) – Barmar
他包括他們一堆兩次。 – Barmar