/* rpcbank.x sample client */ #include #include #include "rpcbank.h" int main(int argc, char **argv) { CLIENT *handle; account myaccount; account youraccount; account *nacc; transaction t1, t2; int *x; int y; void * z; char buf[128]; myaccount.balance = 100; youraccount.balance = 200; t1.A = &myaccount; t2.A = &youraccount; t1.amt = 50; t2.amt = 70; handle = clnt_create(argv[1],rpcbank,bankVersion,"udp"); if (!handle) exit(1); x = inquiry_1(&t1,handle); printf("my initial balance is %d\n",*x); x = inquiry_1(&t2,handle); printf("your initial balance is %d\n",*x); x = (int*)deposit_1(&t1,handle); x = (int*)withdraw_1(&t2,handle); x = inquiry_1(&t1,handle); printf("my balance is %d\n",*x); x = inquiry_1(&t2,handle); printf("your balance is %d\n",*x); printf("t1.amt is now %d\n",t1.amt); deposit_1(&t1,handle); x = inquiry_1(&t1,handle); printf("my balance after 2nd deposit is %d\n",*x); sprintf(buf,"mkdir testdir"); syscall_1(&buf,handle); clnt_destroy(handle); exit(0); } /* gcc -lrpcsvc -lnsl -o rb_client rpcbankclient.c rpcbank_clnt.c rpcbank_xdr.c */