void cmd80000009_BIND(RPC_PACKET_BIND *packet, struct tag_rpc_common *common){ RPC_PACKET_END *epacket; struct sifcmd_RPC_SERVER_DATA *s; epacket = (RPC_PACKET_END *)rpc_get_fpacket(common); epacket->packet.paddr=packet->packet.paddr; epacket->command=0x80000009; epacket->client=packet->client; s = search_svdata(packet->fno, common); if (s == NULL){ epacket->server=0; epacket->buff =0; epacket->cbuff =0; }else{ epacket->server=s; epacket->buff =s->buff; epacket->cbuff =s->cbuff; } iSifSendCmd(0x80000008, epacket, 0x40, 0, 0, 0); }
/* Command 0x80000009 */ static void _request_bind(SifRpcBindPkt_t *bind, void *data) { SifRpcRendPkt_t *rend; SifRpcServerData_t *server; rend = _rpc_get_fpacket(data); rend->pkt_addr = bind->pkt_addr; rend->client = bind->client; rend->cid = 0x80000009; server = search_svdata(bind->sid, data); if (!server) { rend->server = NULL; rend->buff = NULL; rend->cbuff = NULL; } else { rend->server = server; rend->buff = server->buff; rend->cbuff = server->cbuff; } iSifSendCmd(0x80000008, rend, 64, NULL, NULL, 0); }