Notes on the free RPC source |
The following is not an official statement. It is my personal opinion, based on looking at the distribution.
The distribution includes some extensions to pthreads needed by DCE, the RPC client and
server runtime, the IDL compiler, the rpcd
endpoint mapper, and a test
program called perf
. The runtime only supports the dummy ``no
authentication'' RPC; standard DCE security features (authentication, authorization,
privacy, etc.) are not provided in this free release. The NSI interface to the DCE
namespace (e.g., that lets you map names like /.:/printers/mine
to a
particular printer) is not provided.
The code appears to be based on the DCE 1.1 codebase. I ran a few diffs to compare some files with what's going out on the 1.1 tapes and found no differences (other than copyright).
DCE needs threads; specifically it is based on Posix threads, Draft 4. The RPC runtime isolates threads use pretty well to a handful of macros, so if you don't have DCE threads it should be possible to port to your own threads. Full details on the semantics of DCE threads are available as part of the specifications.
Some documentation
covers the threads requirements and should help with general building issues such as all
the C pre-processor #define
's. The IDL compiler sources ``recursively'' call lex
and yacc
. To do this they need to save and restore the state. You will need
to know something about the internals of your generated code. Once you've solved those
problems, the free DCE package provides you with a free DCE-compatible package for doing
unauthenticated RPCs across clients and servers.
The distribution is covered by the following copyright:
* (c) Copyright 1994 OPEN SOFTWARE FOUNDATION, INC. * (c) Copyright 1994 HEWLETT-PACKARD COMPANY * (c) Copyright 1991 DIGITAL EQUIPMENT CORPORATION * To anyone who acknowledges that this file is provided "AS IS" * without any express or implied warranty: * permission to use, copy, modify, and distribute this * file for any purpose is hereby granted without fee, provided that * the above copyright notices and this notice appears in all source * code copies, and that none of the names of Open Software * Foundation, Inc., Hewlett-Packard Company, or Digital Equipment * Corporation be used in advertising or publicity pertaining to * distribution of the software without specific, written prior * permission. Neither Open Software Foundation, Inc., Hewlett- * Packard Company, nor Digital Equipment Corporation makes any * representations about the suitability of this software for any * purpose.
Hope you find this article OF MY OPINION useful.
Rich Salz