Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
17
Добавлен:
01.05.2014
Размер:
844 б
Скачать
/* server program: low-level RPC APIs */
/*   usage: msg_svc2  <transport> */

#include <fstream.h>
#include <stdlib.h>
#include "msg2.h"
#include "RPC.h"

RPC_svc *svcp;

int printmsg( SVCXPRT* xtrp )
{
    int   res  = 0;
    char  *msg = 0;

    if (svcp->getargs( xtrp, (xdrproc_t)xdr_string, (caddr_t)&msg)!=RPC_SUCCESS) 
        return -1;

    ofstream ofs("/dev/console");
    if (ofs) 
       ofs << "server: '" << msg << "'\n";
    else res = -1;

    if (svcp->reply(xtrp, (xdrproc_t)xdr_int, (caddr_t)&res)!=RPC_SUCCESS) 
        res =  -2;

    return res;
}

int main(int argc, char* argv[])
{
    RPC_svc *svcp = new RPC_svc( MSGPROG, MSGVER, argc==2 ? argv[1] : "netpath");

    if (svcp && svcp->run_func( PRINTMSG, printmsg )) return 2;

    return 0; /* shouldn't get here */
}

    

Соседние файлы в папке msg2