mirror of
https://github.com/thug1src/thug.git
synced 2025-01-22 13:53:46 +00:00
237 lines
9.7 KiB
C
237 lines
9.7 KiB
C
/* SCE CONFIDENTIAL
|
|
"PlayStation 2" Programmer Tool Runtime Library Release 2.5
|
|
*/
|
|
/*
|
|
* Netcnf Interface Library
|
|
*
|
|
* Version 1.2
|
|
* Shift-JIS
|
|
*
|
|
* Copyright (C) 2002 Sony Computer Entertainment Inc.
|
|
* All Rights Reserved.
|
|
*
|
|
* netcnfif.h
|
|
*
|
|
* Version Date Design Log
|
|
* --------------------------------------------------------------------
|
|
* 1.1 2002.01.28 tetsu First version
|
|
* 1.2 2002.02.10 tetsu Add SCE_NETCNFIF_CHECK_ADDITIONAL_AT
|
|
* Add sceNETCNFIF_TOO_LONG_STR
|
|
*/
|
|
|
|
#ifndef __netcnfif_common_h_
|
|
#define __netcnfif_common_h_
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif /* __cplusplus */
|
|
|
|
/* Sifrpc 用 */
|
|
#define SCE_NETCNFIF_SSIZE (4096) /* 送受信するデータバッファのサイズ */
|
|
#define SCE_NETCNFIF_INTERFACE (0x80001101) /* リクエスト識別子 */
|
|
|
|
/* Sifrpc サービス関数用番号 */
|
|
#define SCE_NETCNFIF_GET_COUNT (0) /* ネットワーク設定ファイルの数を取得 */
|
|
#define SCE_NETCNFIF_GET_LIST (1) /* ネットワーク設定ファイルのリストを取得 */
|
|
#define SCE_NETCNFIF_LOAD_ENTRY (2) /* ネットワーク設定ファイルの内容を取得 */
|
|
#define SCE_NETCNFIF_ADD_ENTRY (3) /* ネットワーク設定ファイルの追加 */
|
|
#define SCE_NETCNFIF_EDIT_ENTRY (4) /* ネットワーク設定ファイルの編集 */
|
|
#define SCE_NETCNFIF_DELETE_ENTRY (5) /* ネットワーク設定ファイルの削除 */
|
|
#define SCE_NETCNFIF_SET_LATEST_ENTRY (6) /* ネットワーク設定ファイルのリストを編集 */
|
|
#define SCE_NETCNFIF_DELETE_ALL (7) /* あなたのネットワーク設定ファイルを削除 */
|
|
#define SCE_NETCNFIF_CHECK_CAPACITY (8) /* デバイスの残り容量をチェック */
|
|
#define SCE_NETCNFIF_CHECK_ADDITIONAL_AT (9) /* 追加 AT コマンドをチェック */
|
|
#define SCE_NETCNFIF_GET_ADDR (100) /* IOP 側の受信領域(sceNetcnfifData)のアドレスを取得 */
|
|
#define SCE_NETCNFIF_ALLOC_WORKAREA (101) /* IOP 側のワークエリアを確保 */
|
|
#define SCE_NETCNFIF_FREE_WORKAREA (102) /* IOP 側のワークエリアを解放 */
|
|
#define SCE_NETCNFIF_SET_ENV (103) /* IOP 側の sceNetCnfEnv 領域に sceNetcnfifData の内容を設定 */
|
|
|
|
/* エラーコード(-18 までは netcnf.irx と同等) */
|
|
#define sceNETCNFIF_NG (-1) /* その他のエラー */
|
|
#define sceNETCNFIF_ALLOC_ERROR (-2) /* メモリの確保に失敗 */
|
|
#define sceNETCNFIF_OPEN_ERROR (-3) /* ファイルを開けない */
|
|
#define sceNETCNFIF_READ_ERROR (-4) /* 読み込みに失敗 */
|
|
#define sceNETCNFIF_WRITE_ERROR (-5) /* 書き込みに失敗 */
|
|
#define sceNETCNFIF_SEEK_ERROR (-6) /* ファイルサイズ取得に失敗 */
|
|
#define sceNETCNFIF_REMOVE_ERROR (-7) /* 削除に失敗 */
|
|
#define sceNETCNFIF_ENTRY_NOT_FOUND (-8) /* 設定がない */
|
|
#define sceNETCNFIF_INVALID_FNAME (-9) /* 設定管理ファイルのパス名が不正 */
|
|
#define sceNETCNFIF_INVALID_TYPE (-10) /* あなたのネットワーク設定ファイルの種類が不正 */
|
|
#define sceNETCNFIF_INVALID_USR_NAME (-11) /* 設定名が不正 */
|
|
#define sceNETCNFIF_TOO_MANY_ENTRIES (-12) /* 設定数が最大数に達している */
|
|
#define sceNETCNFIF_ID_ERROR (-13) /* ID が取得できない */
|
|
#define sceNETCNFIF_SYNTAX_ERROR (-14) /* 設定内容が不正 */
|
|
#define sceNETCNFIF_MAGIC_ERROR (-15) /* 他の "PlayStation 2" で保存された設定 */
|
|
#define sceNETCNFIF_CAPACITY_ERROR (-16) /* デバイスの残り容量が足りない */
|
|
#define sceNETCNFIF_UNKNOWN_DEVICE (-17) /* 未知のデバイスが指定されている */
|
|
#define sceNETCNFIF_IO_ERROR (-18) /* IO エラー */
|
|
#define sceNETCNFIF_TOO_LONG_STR (-19) /* 指定された文字列が長すぎる */
|
|
#define sceNETCNFIF_NO_DATA (-100) /* データが設定されてない */
|
|
|
|
/* Netcnf Interface に必要なデータ */
|
|
typedef struct sceNetcnfifArg{
|
|
int data; /* その他の引数/その他の返り値 */
|
|
int f_no_decode; /* no_decode フラグ */
|
|
int type; /* あなたのネットワーク設定ファイルの種類 */
|
|
int addr; /* EE 側の受信領域のアドレス/IOP 側アドレスの返り値 */
|
|
char fname[256]; /* 設定管理ファイルのパス名/追加 AT コマンド */
|
|
char usr_name[256]; /* 設定名 */
|
|
char new_usr_name[256]; /* 新しい設定名 */
|
|
} sceNetcnfifArg_t;
|
|
|
|
enum
|
|
{
|
|
sceNetcnfifArg_f_no_decode_off, /* f_no_decode を設定しない */
|
|
sceNetcnfifArg_f_no_decode_on /* f_no_decode を設定する */
|
|
};
|
|
|
|
enum
|
|
{
|
|
sceNetcnfifArg_type_net, /* 組み合わせ */
|
|
sceNetcnfifArg_type_ifc, /* 接続プロバイダ設定 */
|
|
sceNetcnfifArg_type_dev /* 接続機器設定 */
|
|
};
|
|
|
|
/* あなたのネットワーク設定ファイルのリスト */
|
|
typedef struct sceNetcnfifList{
|
|
int type; /* あなたのネットワーク設定ファイルの種類 */
|
|
int stat; /* ファイルステータス */
|
|
char sys_name[256]; /* ファイル名 */
|
|
char usr_name[256]; /* 設定名 */
|
|
int p0[14]; /* 予約領域0 */
|
|
} sceNetcnfifList_t __attribute__((aligned(64)));
|
|
|
|
/* あなたのネットワーク設定ファイルに保存されるデータ */
|
|
typedef struct sceNetcnfifData{
|
|
char attach_ifc[256]; /* 接続プロバイダ設定ファイル名(net) */
|
|
char attach_dev[256]; /* 接続機器設定ファイル名(net) */
|
|
char dhcp_host_name[256]; /* DHCP用ホスト名(ifc) */
|
|
char address[256]; /* IPアドレス(ifc) */
|
|
char netmask[256]; /* ネットマスク(ifc) */
|
|
char gateway[256]; /* デフォルトルータ(ifc) */
|
|
char dns1_address[256]; /* プライマリDNS(ifc) */
|
|
char dns2_address[256]; /* セカンダリDNS(ifc) */
|
|
char phone_numbers1[256]; /* 接続先電話番号1(ifc) */
|
|
char phone_numbers2[256]; /* 接続先電話番号2(ifc) */
|
|
char phone_numbers3[256]; /* 接続先電話番号3(ifc) */
|
|
char auth_name[256]; /* ユーザID(ifc) */
|
|
char auth_key[256]; /* パスワード(ifc) */
|
|
char peer_name[256]; /* 接続先の認証名(ifc) */
|
|
char vendor[256]; /* ベンダ名(dev) */
|
|
char product[256]; /* プロダクト名(dev) */
|
|
char chat_additional[256]; /* 追加ATコマンド(dev) */
|
|
char outside_number[256]; /* 外線発信番号設定(番号設定部分)(dev) */
|
|
char outside_delay[256]; /* 外線発信番号設定(遅延設定部分)(dev) */
|
|
int ifc_type; /* デバイスレイヤの種別(ifc) */
|
|
int mtu; /* MTUの設定(ifc) */
|
|
int ifc_idle_timeout; /* 回線切断設定(ifc) */
|
|
int dev_type; /* デバイスレイヤの種別(dev) */
|
|
int phy_config; /* イーサネット接続機器の動作モード(dev) */
|
|
int dialing_type; /* ダイアル方法(dev) */
|
|
int dev_idle_timeout; /* 回線切断設定(dev) */
|
|
int p0; /* 予約領域0 */
|
|
unsigned char dhcp; /* DHCP使用・不使用(ifc) */
|
|
unsigned char dns1_nego; /* DNSサーバアドレスを自動取得する・しない(ifc) */
|
|
unsigned char dns2_nego; /* DNSサーバアドレスを自動取得する・しない(ifc) */
|
|
unsigned char f_auth; /* 認証方法の指定有り(ifc) */
|
|
unsigned char auth; /* 認証方法(ifc) */
|
|
unsigned char pppoe; /* PPPoE使用・不使用(ifc) */
|
|
unsigned char prc_nego; /* PFCネゴシエーションの禁止(ifc) */
|
|
unsigned char acc_nego; /* ACFCネゴシエーションの禁止(ifc) */
|
|
unsigned char accm_nego; /* ACCMネゴシエーションの禁止(ifc) */
|
|
unsigned char p1; /* 予約領域1 */
|
|
unsigned char p2; /* 予約領域2 */
|
|
unsigned char p3; /* 予約領域3 */
|
|
int p4[5]; /* 予約領域4 */
|
|
} sceNetcnfifData_t __attribute__((aligned(64)));
|
|
|
|
enum
|
|
{
|
|
sceNetcnfifData_type_no_set = -1, /* 設定しない */
|
|
sceNetcnfifData_type_eth = 1, /* type eth */
|
|
sceNetcnfifData_type_ppp, /* type ppp */
|
|
sceNetcnfifData_type_nic /* type nic */
|
|
};
|
|
|
|
enum
|
|
{
|
|
sceNetcnfifData_mtu_no_set = -1, /* 設定しない */
|
|
sceNetcnfifData_mtu_default = 1454 /* mtu 1454 */
|
|
};
|
|
|
|
enum
|
|
{
|
|
sceNetcnfifData_idle_timeout_no_set = -1 /* 設定しない */
|
|
};
|
|
|
|
enum
|
|
{
|
|
sceNetcnfifData_phy_config_no_set = -1, /* 設定しない */
|
|
sceNetcnfifData_phy_config_auto = 1, /* phy_config auto */
|
|
sceNetcnfifData_phy_config_10, /* phy_config 10 */
|
|
sceNetcnfifData_phy_config_10_FD, /* phy_config 10_fd */
|
|
sceNetcnfifData_phy_config_TX = 5, /* phy_config tx */
|
|
sceNetcnfifData_phy_config_TX_FD /* phy_config tx_fd */
|
|
};
|
|
|
|
enum
|
|
{
|
|
sceNetcnfifData_dialing_type_no_set = -1, /* 設定しない */
|
|
sceNetcnfifData_dialing_type_tone = 0, /* dialing_type tone */
|
|
sceNetcnfifData_dialing_type_pulse /* dialing_type pulse */
|
|
};
|
|
|
|
enum
|
|
{
|
|
sceNetcnfifData_dhcp_no_set = 0xff, /* 設定しない */
|
|
sceNetcnfifData_dhcp_no_use = 0, /* -dhcp */
|
|
sceNetcnfifData_dhcp_use /* dhcp */
|
|
};
|
|
|
|
enum
|
|
{
|
|
sceNetcnfifData_dns_nego_no_set = 0xff, /* 設定しない */
|
|
sceNetcnfifData_dns_nego_on = 1 /* want.dns1_nego/want.dns2_nego */
|
|
};
|
|
|
|
enum
|
|
{
|
|
sceNetcnfifData_f_auth_off, /* allow.auth chap/pap を設定しない */
|
|
sceNetcnfifData_f_auth_on /* allow.auth chap/pap を設定する */
|
|
};
|
|
|
|
enum
|
|
{
|
|
sceNetcnfifData_auth_chap_pap = 4 /* allow.auth chap/pap */
|
|
};
|
|
|
|
enum
|
|
{
|
|
sceNetcnfifData_pppoe_no_set = 0xff, /* 設定しない */
|
|
sceNetcnfifData_pppoe_use = 1 /* pppoe */
|
|
};
|
|
|
|
enum
|
|
{
|
|
sceNetcnfifData_prc_nego_no_set = 0xff, /* 設定しない */
|
|
sceNetcnfifData_prc_nego_off = 0 /* -want.prc_nego */
|
|
};
|
|
|
|
enum
|
|
{
|
|
sceNetcnfifData_acc_nego_no_set = 0xff, /* 設定しない */
|
|
sceNetcnfifData_acc_nego_off = 0 /* -want.acc_nego */
|
|
};
|
|
|
|
enum
|
|
{
|
|
sceNetcnfifData_accm_nego_no_set = 0xff, /* 設定しない */
|
|
sceNetcnfifData_accm_nego_off = 0 /* -want.accm_nego */
|
|
};
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif /* __cplusplus */
|
|
|
|
#endif /*__netcnfif_common_h_ */
|