InternalProtocolStructure structure
Contains information about the protocol descriped in member psess.Syntax
typedef struct InternalProtocolStructure{
struct InternalProtocolStructure *nextProtocol;
struct ProtocolSession *psess;
struct ProtocolSession *copyPsess;
void *reserved;
void *reserved;
struct LinkedlistControlPanelOptions *main;
struct LinkedlistControlPanelOptions *subOptions;
int status;
int type;
int highestSupportedVersion;
int extraSize;
void *reserved;
void *reserved;
struct ProtocolSignature *pSign[];
void *reserved;
} InternalProtocolStructure;
Members
nextProtocol A pointer to the next InternalProtocolStructure structure. This member can be set to zero.
psess A pointer to a ProtocolSession structure. This is a session assigned to a protocol at the moment it's loaded into the memory.
copyPsess A pointer to a copy of member psess. This member is used to retreive the correct protocolName since the protocolName in psess can be changed by the protocol itself.
reserved This value is here for C compatibility (padding) and is ignored.
reserved This value is here for C compatibility (padding) and is ignored.
main A pointer to the first and only item in the linked list of ControlPanelOption structures. The optionName and iconURL member will be used for the user to identify this plugin when it wants to (de)activate the plugin or wants to change options for this plugin. If the flag POF_SHOW_IN_MENU is set, the plugin will be visible in the menu of the control panel, linking to menuURL. Other flags are ignored.
subOptions A pointer to the first item in the linked list of ControlPanelOption structures. Every secutity-, menu- and/or user changeable-option is defined in one of those structures.
status This parameter can be one of the following values.
Value | Meaning |
PT_STARTING 0 | The protocol is loading.
|
PT_PROTOCOLINFO_SET 1 | The protocol is still loading, but already called the function SetProtocolInformation.
|
PT_RUNNING 2 | The protocol is successfully loaded.
|
type This parameter can be -1 (0xffffffff) or one of the following values. Use this member to be sure you referer to the correct protocol.
Value | Meaning |
PT_RECEIVER 0 | The protocol is a receiver (e.g. TCP/IP, Bluetooth). It should be able to establish a new connection with a client, receive data and send data to the client.
|
PT_MANIPULATOR 1 | The protocol is a transformer (e.g. SSL/ TLS). When a PT_LABORER protocol requires to receive or send data, this protocol should manipulate the data.
|
PT_LABORER 2 | The protocol is a processor (e.g. HTTP/SMTP/FTP).
|
PT_NO_PROTOCOL 3 | This is not a protocol but does other thing (like an updater).
|
And this parameter can be a combination of the following values, in combination with the previous values.
Value | Meaning |
PT_CONTROLPANEL 0x10000 | The protocol wants the right to acces the settings of all the protocols and will be able to activate new protocols.
|
PT_SUPPORT_PSIGN 0x20000 | The protocol suppports the pSign parameter, please read the remark section for more information.
|
And this parameter can be one of the following values, in combination with the previous values.
Value | Meaning |
PT_UTF_8_CHARSET 0x0 | The unicode strings passed by this protocol are in the UTF-8 charset.
|
highestSupportedVersionValue | Meaning |
V_TV_SERVER_1 0 | A reference to API version 1.00 of TV's server.
|
V_TV_SERVER_101 1 | A reference to API version 1.01 of TV's server.
|
V_TV_SERVER_102 2 | A reference to API version 1.02 of TV's server.
|
extraSizereserved This value is here for C compatibility (padding) and is ignored.
reserved This value is here for C compatibility (padding) and is ignored.
pSign A pointer to the buffer with ProtocolSignature structure(s) describing signatures used by this protocol. This parameter can be set to zero. Please read the Remark section for more information.
reserved This value is here for C compatibility (padding) and is ignored.
Requirements
Minimum supported API | 1.00
|
Header | tvsserver_base.h
|