Un problème d'édition de lein pour registerrpc.
Merci de votre aide.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45 ==================== #include <stdio.h> #include <rpc/types.h> #include <rpc/xdr.h> #include <rpc/rpc.h> typedef struct { int val1; int val2; } couple_entier; // Le filtre xdr bool_t xdr_couple(XDR *p, couple_entier *x) { return (xdr_int(p, &x->val1) && xdr_int(p, &x->val2)); } // La procedure RPC static int i; int *somme (couple_entier *x) { i = x->val1 + x->val2; return &i;} /* Les numeros */ #define NUM_PROG 0x22222222 /* numero de programme */ #define NUM_VERSION_1 1 /* le numero de version ici 1 */ #define NUM_SOMME 1 /* numero de la procedure somme */ main () { /* enregistrement du service aupres du rpcbind*/ if (registerrpc((unsigned long)NUM_PROG,(unsigned long) NUM_VERSION_1,(unsigned long) NUM_SOMME,(char *(*)(char *)) somme,(xdrproc_t) xdr_couple, (xdrproc_t) xdr_int) ==-1) {perror(" Probleme enregistrement du service somme "); exit(1); } printf("Attente de client \n"); svc_run(); printf(" Sortie du service \n"); }
Partager