Hengband  2.1.4
 全て データ構造 ファイル 関数 変数 型定義 マクロ定義 ページ
データ構造 | マクロ定義 | 関数
report.c

スコアサーバ転送機能の実装 [詳細]

#include "angband.h"
#include <stdio.h>
#include <stdarg.h>
#include <ctype.h>
#include <string.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>
#include <sys/time.h>
#include <setjmp.h>
#include <signal.h>
report.cのインクルード依存関係図

データ構造

struct  BUF
 

マクロ定義

#define _GNU_SOURCE
 未使用 [詳細]
 
#define HTTP_PROXY   ""
 デフォルトのプロキシURL / Default proxy url [詳細]
 
#define HTTP_PROXY_PORT   0
 デフォルトのプロキシポート / Default proxy port [詳細]
 
#define HTTP_TIMEOUT   20
 デフォルトのタイムアウト時間(秒) / Timeout length (second) [詳細]
 
#define SCORE_SERVER   "moon.kmc.gr.jp"
 デフォルトのスコアサーバURL / Default score server url [詳細]
 
#define SCORE_PORT   80
 デフォルトのスコアサーバポート / Default score server port [詳細]
 
#define SCORE_PATH   "http://moon.kmc.gr.jp/hengband/hengscore-en/score.cgi"
 スコア開示URL [詳細]
 
#define BUFSIZE   (65536)
 スコアサーバ転送バッファサイズ [詳細]
 

関数

static BUFbuf_new (void)
 転送用バッファの確保 [詳細]
 
static void buf_delete (BUF *b)
 転送用バッファの解放 [詳細]
 
static int buf_append (BUF *buf, const char *data, size_t size)
 転送用バッファにデータを追加する [詳細]
 
static int buf_sprintf (BUF *buf, const char *fmt,...)
 転送用バッファにフォーマット指定した文字列データを追加する [詳細]
 
static void http_post (int sd, cptr url, BUF *buf)
 HTTPによるダンプ内容伝送 [詳細]
 
static errr make_dump (BUF *dumpbuf)
 キャラクタダンプを作って BUFに保存 [詳細]
 
cptr make_screen_dump (void)
 スクリーンダンプを作成する/ Make screen dump to buffer [詳細]
 
errr report_score (void)
 スコア転送処理のメインルーチン [詳細]
 

説明

スコアサーバ転送機能の実装

日付
2014/07/14
作者
Hengband Team

マクロ定義

#define _GNU_SOURCE

未使用

#define BUFSIZE   (65536)

スコアサーバ転送バッファサイズ

#define HTTP_PROXY   ""

デフォルトのプロキシURL / Default proxy url

#define HTTP_PROXY_PORT   0

デフォルトのプロキシポート / Default proxy port

#define HTTP_TIMEOUT   20

デフォルトのタイムアウト時間(秒) / Timeout length (second)

#define SCORE_PATH   "http://moon.kmc.gr.jp/hengband/hengscore-en/score.cgi"

スコア開示URL

#define SCORE_PORT   80

デフォルトのスコアサーバポート / Default score server port

#define SCORE_SERVER   "moon.kmc.gr.jp"

デフォルトのスコアサーバURL / Default score server url

関数

static int buf_append ( BUF buf,
const char *  data,
size_t  size 
)
static

転送用バッファにデータを追加する

引数
buf追加先バッファの参照ポインタ
data追加元データ
size追加サイズ
戻り値
追加後のバッファ容量

呼出しグラフ:

static void buf_delete ( BUF b)
static

転送用バッファの解放

引数
b解放するバッファの参照ポインタ

呼出しグラフ:

static BUF* buf_new ( void  )
static

転送用バッファの確保

戻り値
確保したバッファの参照ポインタ

呼出しグラフ:

static int buf_sprintf ( BUF buf,
const char *  fmt,
  ... 
)
static

転送用バッファにフォーマット指定した文字列データを追加する

引数
buf追加先バッファの参照ポインタ
fmt文字列フォーマット
戻り値
追加後のバッファ容量

関数の呼び出しグラフ:

呼出しグラフ:

static void http_post ( int  sd,
cptr  url,
BUF buf 
)
static

HTTPによるダンプ内容伝送

引数
sdソケットID
url伝送先URL
buf伝送内容バッファ
戻り値
なし

関数の呼び出しグラフ:

呼出しグラフ:

static errr make_dump ( BUF dumpbuf)
static

キャラクタダンプを作って BUFに保存

引数
dumpbuf伝送内容バッファ
戻り値
エラーコード

関数の呼び出しグラフ:

呼出しグラフ:

cptr make_screen_dump ( void  )

スクリーンダンプを作成する/ Make screen dump to buffer

戻り値
作成したスクリーンダンプの参照ポインタ

関数の呼び出しグラフ:

呼出しグラフ:

errr report_score ( void  )

スコア転送処理のメインルーチン

戻り値
エラーコード

関数の呼び出しグラフ:

呼出しグラフ: