source: rtems/cpukit/librpc/README_RTEMS @ 7094267

4.104.114.84.95
Last change on this file since 7094267 was df49c60, checked in by Joel Sherrill <joel.sherrill@…>, on 06/12/00 at 15:00:15

Merged from 4.5.0-beta3a

  • Property mode set to 100644
File size: 2.2 KB
Line 
1USING RPC/XDR ON RTEMS
2======================
3For the most part, programmers using RPC/XDR routines on RTEMS
4can proceed as if they were to be using a POSIX/UNIX system.
5The only significant changes are those to start the portmapper
6and to allow use of RPC/XDR by multiple threads.
7
8Starting the portmapper
9=======================
10The SUN portmapper program has been modified to run as an RTEMS
11task.  Applications which need the portmapper can start this
12task by calling:
13        int rtems_rpc_start_portmapper (int priority);
14The return value is an RTEMS status code.
15
16Multi-threaded operation
17========================
18The RPC/XDR package has been modified to allow for multiple RTEMS
19tasks to use RPC/XDR routines.  If more than one task is to call
20an RPC/XDR routine, the additional tasks must call:
21        int rtems_rpc_task_init(void);
22before calling any RPC/XDR routines.  For example, the portmapper
23calls this routine since the portmapper uses RPC/XDR routines in
24a separate thread.
25The return value is an RTEMS status code.
26
27
28Porting Notes
29=============
30Most of the FreeBSD rpc library ports to RTEMS with little
31or no modification beyond that required to provide for operation
32in a multitasking environment.  Multitasking operation was
33provided by moving all `static persistence' variables into
34a single structure and using an RTEMS task variable to point
35to that structure. 
36
37Some of the library, however, has not made it into the RTEMS
38implementation.  FreeBSD source files which have been left out include:
39- Files which provide RPC to the AF_UNIX address family:
40        clnt_unix.c
41        svc_unix.c
42  An `ifndef __rtems__' was added to clnt_generic.c because clnt_unix.c
43  was omitted.
44- Files which need NIS:
45        auth_time.c
46- Files which provide DES authentication:
47        auth_des.c
48        authdes_prot.c
49        crypt_client.c
50        des_crypt.c
51        des_soft.c
52        getpublickey.c
53        key_call.c
54        key_prot_xdr.c
55        svc_auth_des.c
56
57The FreeBSD xdr source compiles and runs on RTEMS without modification.
58
59The original source was obtained from:
60        ftp://ftp.FreeBSD.org/pub/FreeBSD/
61                        branches/4.0-stable/src/lib/libc/rpc
62                        branches/4.0-stable/src/lib/libc/xdr
63                        branches/4.0-stable/src/include/rpc
64                        branches/4.0-stable/src/include/rpcsvc
Note: See TracBrowser for help on using the repository browser.