Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
NetWork
Opentracker
提交
5bb381e2
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,发现更多精彩内容 >>
提交
5bb381e2
编写于
3月 15, 2007
作者:
D
denis
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
new modes for udp4 and tcp4 stats
上级
50fe661a
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
31 addition
and
7 deletion
+31
-7
opentracker.c
opentracker.c
+30
-6
trackerlogic.h
trackerlogic.h
+1
-1
未找到文件。
opentracker.c
浏览文件 @
5bb381e2
...
...
@@ -246,18 +246,42 @@ static void httpresponse( const int64 s, char *data ) {
mode
=
STATS_TOP5
;
else
if
(
!
byte_diff
(
data
,
4
,
"dmem"
))
mode
=
STATS_DMEM
;
else
if
(
!
byte_diff
(
data
,
4
,
"tcp4"
))
mode
=
STATS_TCP
;
else
if
(
!
byte_diff
(
data
,
4
,
"udp4"
))
mode
=
STATS_UDP
;
else
HTTPERROR_400_PARAM
;
}
}
if
(
mode
==
STATS_DMEM
)
{
if
(
!
(
reply_size
=
return_memstat_for_tracker
(
&
reply
)
)
)
HTTPERROR_500
;
return
sendmallocdata
(
s
,
reply
,
reply_size
);
}
switch
(
mode
)
{
case
STATS_DMEM
:
if
(
!
(
reply_size
=
return_memstat_for_tracker
(
&
reply
)
)
)
HTTPERROR_500
;
return
sendmallocdata
(
s
,
reply
,
reply_size
);
case
STATS_UDP
:
t
=
time
(
NULL
)
-
ot_start_time
;
reply_size
=
sprintf
(
static_outbuf
+
SUCCESS_HTTP_HEADER_LENGTH
,
"%i
\n
%i
\n
%i seconds (%i hours)
\n
opentracker udp stats."
,
ot_overall_connections
,
ot_overall_udp_successfulannounces
,
(
int
)
t
,
(
int
)(
t
/
3600
)
);
break
;
/* Enough for http header + whole scrape string */
if
(
!
(
reply_size
=
return_stats_for_tracker
(
SUCCESS_HTTP_HEADER_LENGTH
+
static_outbuf
,
mode
)
)
)
HTTPERROR_500
;
case
STATS_TCP
:
t
=
time
(
NULL
)
-
ot_start_time
;
reply_size
=
sprintf
(
static_outbuf
+
SUCCESS_HTTP_HEADER_LENGTH
,
"%i
\n
%i
\n
%i seconds (%i hours)
\n
opentracker tcp stats."
,
ot_overall_connections
,
ot_overall_tcp_successfulannounces
,
(
int
)
t
,
(
int
)(
t
/
3600
)
);
break
;
default:
case
STATS_MRTG
:
/* Enough for http header + whole scrape string */
if
(
!
(
reply_size
=
return_stats_for_tracker
(
SUCCESS_HTTP_HEADER_LENGTH
+
static_outbuf
,
mode
)
)
)
HTTPERROR_500
;
break
;
}
break
;
case
6
:
/* scrape ? */
if
(
byte_diff
(
data
,
6
,
"scrape"
)
)
HTTPERROR_404
;
...
...
trackerlogic.h
浏览文件 @
5bb381e2
...
...
@@ -91,7 +91,7 @@ extern int g_closedtracker;
extern
int
g_check_blacklist
;
#endif
enum
{
STATS_MRTG
,
STATS_TOP5
,
STATS_DMEM
};
enum
{
STATS_MRTG
,
STATS_TOP5
,
STATS_DMEM
,
STATS_TCP
,
STATS_UDP
};
ot_torrent
*
add_peer_to_torrent
(
ot_hash
*
hash
,
ot_peer
*
peer
);
size_t
return_peers_for_torrent
(
ot_torrent
*
torrent
,
size_t
amount
,
char
*
reply
,
int
is_tcp
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录