Lines Matching +full:en +full:- +full:us
2 .\" Must use -- tbl -- for this one
23 their network format and vice-versa.
62 that would otherwise be spent coding and debugging low-level routines.
67 programmers to mix low-level code with high-level code.
69 is no exception. In speed-critical applications, hand-written routines
104 fprintf(stderr, "usage: %s <message>\en", argv[0]);
110 fprintf(stderr, "%s: couldn't print your message\en",
114 printf("Message Delivered!\en");
132 fprintf(f, "%s\en", msg);
142 example% \fBcc printmsg.c -o printmsg\fP
197 to mean a null-terminated string of characters, but it could also
199 characters. In RPC language, a null-terminated string is
237 fprintf(f, "%s\en", *msg);
266 lower-case letters, an underbar (\*Q_\*U) is appended to it, and
292 fprintf(stderr, "usage: %s host message\en", argv[0]);
352 fprintf(stderr, "%s: %s couldn't print your message\en",
362 printf("Message delivered to %s!\en", server);
384 example% \fBcc rprintmsg.c msg_clnt.c -o rprintmsg\fP
385 example% \fBcc msg_proc.c msg_svc.c -o msg_server\fP
445 Then on our local machine (\*Qsun\*U) we can print a message on \*Qmoon\*Us
452 The message will get printed to \*Qmoon\*Us console. You can print a
464 structures into network format and vice-versa. This example presents
538 vice-versa. These are output in the file
598 nl->name = strdup(d->d_name);
599 nlp = &nl->next;
640 fprintf(stderr, "usage: %s host directory\en",
694 if (result->errno != 0) {
701 errno = result->errno;
712 for (nl = result->readdir_res_u.list; nl != NULL;
713 nl = nl->next) {
714 printf("%s\en", nl->name);
723 sun% \fBcc rls.c dir_clnt.c dir_xdr.c -o rls\fP
724 sun% \fBcc dir_svc.c dir_proc.c dir_xdr.c -o dir_svc\fP
760 routines, and have client-side routines call server routines
764 \&The C-Preprocessor
765 .IX rpcgen "C-preprocessor" \fIrpcgen\fP
767 The C-preprocessor is run on all input files before they are
777 RPC_HDR&for header-file output
779 RPC_SVC&for server-skeleton output
869 * return non-null pointer so RPC will send out a reply
875 Note that if procedure returns type \*Qvoid *\*U, they must return a non-NULL
898 aup = (struct authunix_parms *)rq->rq_clntcred;
899 if (aup->aup_uid != 0) {
940 definition-list:
942 definition ";" definition-list
949 enum-definition
950 struct-definition
951 union-definition
952 typedef-definition
953 const-definition
954 program-definition
965 struct-definition:
966 "struct" struct-ident "{"
967 declaration-list
970 declaration-list:
972 declaration ";" declaration-list
974 As an example, here is an XDR structure to a two-dimensional
980 int x; --> int x;
999 union-definition:
1000 "union" union-ident "switch" "(" declaration ")" "{"
1001 case-list
1004 case-list:
1007 "case" value ":" declaration ";" case-list
1042 enum-definition:
1043 "enum" enum-ident "{"
1044 enum-value-list
1047 enum-value-list:
1048 enum-value
1049 enum-value "," enum-value-list
1051 enum-value:
1052 enum-value-ident
1053 enum-value-ident "=" value
1061 GREEN = 1, --> GREEN = 1,
1074 typedef-definition:
1083 typedef string fname_type<255>; --> typedef char *fname_type;
1094 const-definition:
1095 "const" const-ident "=" integer
1102 const DOZEN = 12; --> #define DOZEN 12
1112 program-definition:
1113 "program" program-ident "{"
1114 version-list
1117 version-list:
1119 version ";" version-list
1122 "version" version-ident "{"
1123 procedure-list
1126 procedure-list:
1128 procedure ";" procedure-list
1131 type-ident procedure-ident "(" type-ident ")" "=" value
1167 simple-declaration
1168 fixed-array-declaration
1169 variable-array-declaration
1170 pointer-declaration
1175 simple-declaration:
1176 type-ident variable-ident
1181 colortype color; --> colortype color;
1183 \fB2) Fixed-length Array Declarations\fP are just like C array declarations:
1186 fixed-array-declaration:
1187 type-ident variable-ident "[" value "]"
1192 colortype palette[8]; --> colortype palette[8];
1194 \fB3) Variable-Length Array Declarations\fP have no explicit syntax
1195 in C, so XDR invents its own using angle-brackets.
1198 variable-array-declaration:
1199 type-ident variable-ident "<" value ">"
1200 type-ident variable-ident "<" ">"
1209 Since variable-length arrays have no explicit syntax in C, these
1210 declarations are actually compiled into \*Qstruct\*Us. For example, the
1228 actually called \*Qoptional-data\*U, not \*Qpointer\*U, in XDR language.
1231 pointer-declaration:
1232 type-ident "*" variable-ident
1237 listitem *next; --> listitem *next;
1246 C has no built-in boolean type. However, the RPC library does a
1262 bool married; --> bool_t married;
1265 C has no built-in string type, but instead uses the null-terminated
1267 \*Qstring\*U keyword, and compiled into \*Qchar *\*Us in the output header
1277 string name<32>; --> char *name;
1278 string longname<>; --> char *longname;
1287 opaque diskblock[512]; --> char diskblock[512];
1289 opaque filedata<1024>; --> struct {