X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=portmap%2Fportmap.x;h=abe31b986855c6253de1f744640e486bfa7be8e2;hb=8e003243fbec4cff4af3e9ca01ea713065336970;hp=61a9d5db563f11f921cc0658f534d19ec696b3c5;hpb=7fbedfdefd1df0bb6f67d7ee769918c0a09ed3be;p=deb_libnfs.git diff --git a/portmap/portmap.x b/portmap/portmap.x index 61a9d5d..abe31b9 100644 --- a/portmap/portmap.x +++ b/portmap/portmap.x @@ -1,5 +1,6 @@ /* * From RFC1833 + * and http://tools.ietf.org/html/draft-ietf-oncrpc-rpcbind-00 */ const PMAP_PORT = 111; /* portmapper port number */ @@ -32,7 +33,7 @@ struct pmap2_dump_result { struct pmap2_mapping_list *list; }; -struct pmap3_getaddr_result { +struct pmap3_string_result { string addr<>; }; @@ -53,6 +54,27 @@ struct pmap3_dump_result { struct pmap3_mapping_list *list; }; +struct pmap3_call_args { + unsigned int prog; + unsigned int vers; + unsigned int proc; + opaque args<>; +}; + +struct pmap3_call_result { + unsigned int port; + opaque res<>; +}; + +struct pmap3_netbuf { + unsigned int maxlen; + /* This pretty much contains a sockaddr_storage. + * Beware differences in endianess for ss_family + * and whether or not ss_len exists. + */ + opaque buf<>; +}; + program PMAP_PROGRAM { version PMAP_V2 { void @@ -77,11 +99,29 @@ program PMAP_PROGRAM { void PMAP3_NULL(void) = 0; - pmap3_getaddr_result + bool + PMAP3_SET(pmap3_mapping) = 1; + + bool + PMAP3_UNSET(pmap3_mapping) = 2; + + pmap3_string_result PMAP3_GETADDR(pmap3_mapping) = 3; pmap3_dump_result PMAP3_DUMP(void) = 4; + + pmap3_call_result + PMAP3_CALLIT(pmap3_call_args) = 5; + + unsigned int + PMAP3_GETTIME(void) = 6; + + pmap3_netbuf + PMAP3_UADDR2TADDR(string) = 7; + + struct pmap3_string_result + PMAP3_TADDR2UADDR(pmap3_netbuf) = 8; } = 3; } = 100000;