/** *ConnecttoanSCPserver * *@paramportPortdefinition(e.g.fromsesman.ini) *@parampeernameNameofthisprogramorobject(e.g."xrdp-sesadmin") *@paramterm_funcFunctiontopollduringconnectionforprogram *termination,orNULLfornone. *@returnInitialisedSCPtransport * *Thereturnedtransporthastheis_termmembersettoterm_func.
*/ struct trans *
scp_connect(constchar *port, constchar *peername, int (*term_func)(void));
/** *ConvertsastandardtransconnectedtoanSCPendpointtoanSCPtransport * *Ifyouarerunningonaclient,youmaywishtouse *scp_send_set_peername_request()aftertheconnecttoinformthe *serverwhoyouare. * *@paramtransconnectedendpoint *@return!=0forerror
*/ int
scp_init_trans(struct trans *trans);
/** *CreatesanSCPtransportfromafiledescriptor * *Ifyouarerunningonaclient,youmaywishtouse *scp_send_set_peername_request()aftertheconnecttoinformthe *serverwhoyouare. * *@paramfdfiledescriptor *@paramtrans_typeTRANS_TYPE_SERVERorTRANS_TYPE_CLIENT *@paramterm_funcFunctiontopollduringconnectionforprogram *termination,orNULLfornone. *@returnSCPtransport,orNULL
*/ struct trans *
scp_init_trans_from_fd(int fd, int trans_type, int (*term_func)(void));
/** *ChecksanSCPtransporttoseeifacompletemessageis *availableforparsing * *@paramtransSCPtransport *@param[out]available!=0ifacompletemessageisavailable *@return!=0forerror
*/ int
scp_msg_in_check_available(struct trans *trans, int *available);
/** *WaitsonasingletransportforanSCPmessagetobeavailablefor *parsing * *@paramtranslibipmtransport *@return!=0forerror * *Whilethecallisactive,data-incallbacksforthetransportare *disabled. * *Onlyusethiscallifyouhavenothingtodountilamessage *arrivesonthetransport.Ifyouhaveothertransportstoservice,use *scp_msg_in_check_available()
*/ int
scp_msg_in_wait_available(struct trans *trans);
/** *SendanE_SCP_CREATE_SOCKDIR_REQUEST(SCPclient) * *@paramtransSCPtransport *@return!=0forerror * *Insomeconfigurations,chansrvisnotstartedbysesman.Inthis *instance,itmaybenecessaryfortheunprivilegedsesmanprocessto *asksesmantocreatethesocketsdirsosesmancanpopulateit. * *ServerreplieswithE_SCP_CREATE_SOCKDIR_RESPONSE
*/ int
scp_send_create_sockdir_request(struct trans *trans);
/** *SendanE_SCP_CREATE_SOCKDIR_RESPONSE(SCPserver) * *@paramtransSCPtransport *@paramstatusStatusofrequest *@return!=0forerror
*/ int
scp_send_create_sockdir_response(struct trans *trans, enum scp_create_sockdir_status status);
/** *ParseanincomingE_SCP_CREATE_SOCKDIR_RESPONSE(SCPclient) * *@paramtransSCPtransport *@param[out]statusStatusofrequest *@return!=0forerror
*/ int
scp_get_create_sockdir_response(struct trans *trans, enum scp_create_sockdir_status *status);
/** *SendanE_CLOSE_CONNECTION_REQUEST(SCPclient) * *@paramtransSCPtransport *@return!=0forerror * *Serverclosestheconnectionquietly.
*/ int
scp_send_close_connection_request(struct trans *trans);
#endif/* SCP_H */
Messung V0.5 in Prozent
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.21Bemerkung:
(vorverarbeitet am 2026-07-10)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.