Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
NetWork
Opentracker
提交
d5876ebb
O
Opentracker
项目概览
NetWork
/
Opentracker
通知
0
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
O
Opentracker
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
d5876ebb
编写于
10月 19, 2007
作者:
E
erdgeist
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Prevent url-decoding for debug by using a temp buffer
上级
271ff156
变更
1
显示空白变更内容
内联
并排
Showing
1 changed file
with
8 addition
and
5 deletion
+8
-5
opentracker.c
opentracker.c
+8
-5
未找到文件。
opentracker.c
浏览文件 @
d5876ebb
...
...
@@ -59,6 +59,7 @@ static char *accesslist_filename = NULL;
static
char
static_inbuf
[
8192
];
static
char
static_outbuf
[
8192
];
static
char
static_tmpbuf
[
8192
];
static
char
*
FLAG_TCP
=
"TCP"
;
static
char
*
FLAG_UDP
=
"UDP"
;
...
...
@@ -372,6 +373,9 @@ LOG_TO_STDERR( "stats: %d.%d.%d.%d - mode: s24s old\n", h->ip[0], h->ip[1], h->i
case
6
:
/* scrape ? */
if
(
byte_diff
(
data
,
6
,
"scrape"
)
)
HTTPERROR_404
;
/* We want the pure plain un-unescaped text */
memmove
(
static_tmpbuf
,
static_inbuf
,
8192
);
/* This is to hack around stupid clients that just replace
"announce ?info_hash" with "scrape ?info_hash".
We do not want to bomb them with full scrapes */
...
...
@@ -400,9 +404,8 @@ SCRAPE_WORKAROUND:
/* Scanned whole query string, no hash means full scrape... you might want to limit that */
if
(
!
hash
)
{
LOG_TO_STDERR
(
"scrp: %d.%d.%d.%d - FULL SCRAPE
\n
"
,
h
->
ip
[
0
],
h
->
ip
[
1
],
h
->
ip
[
2
],
h
->
ip
[
3
]
);
LOG_TO_STDERR
(
"GET /scrape"
);
write
(
2
,
data
,
l
-
12
);
write
(
2
,
"
\n
"
,
1
);
write
(
2
,
static_tmpbuf
,
l
);
write
(
2
,
"
\n\n\n
"
,
1
);
if
(
!
(
reply_size
=
return_fullscrape_for_tracker
(
&
reply
)
)
)
HTTPERROR_500
;
ot_overall_tcp_successfulannounces
++
;
return
sendmmapdata
(
s
,
reply
,
reply_size
);
...
...
@@ -623,8 +626,8 @@ static void handle_read( const int64 clientsocket ) {
if
(
(
array_bytes
(
&
h
->
request
)
>
8192
)
&&
NOTBLESSED
(
h
)
)
return
httperror
(
clientsocket
,
"500 request too long"
,
"You sent too much headers"
);
if
(
memchr
(
array_start
(
&
h
->
request
),
'\n'
,
array_
length
(
&
h
->
request
,
1
)
)
)
return
httpresponse
(
clientsocket
,
array_start
(
&
h
->
request
),
array_
length
(
&
h
->
request
,
1
)
);
if
(
memchr
(
array_start
(
&
h
->
request
),
'\n'
,
array_
bytes
(
&
h
->
request
)
)
)
return
httpresponse
(
clientsocket
,
array_start
(
&
h
->
request
),
array_
bytes
(
&
h
->
request
)
);
}
static
void
handle_write
(
const
int64
clientsocket
)
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录