Knowledge Base Ask Cody Resources



 
Distinct ONC RPC/XDR Toolkit - 32 Ver. 3.1 Release Notes
This release fixes a number of problems reported in version 3 and includes some
enhancements. Please note that this release requires service pack 4 to be
applied on NT 4.0 and the latest Winsock patch to be applied to any Windows 95
system.



Portmapper

This fix addresses the problem where the clnt_broadcast function was not
getting a response from the Distinct portmapper even though the server that the
client is attempting to connect to was registered.


The memory leak that was occuring in the rpc.dll when the portmapper was left
running for a long time has been fixed.


Rpcgen32


  1. The problem where the rpcgen32 utility was not producing the right files when
    absolute and relative paths of .x file were used is fixed.
  2. Two new command line options are added to allow the file to be preprocessed by
    the C-Preprocessor by invoking the C preprocessor. BEFORE you can use this
    option you must add two values to the following registry key:





       

    HKEY_LOCAL_MACHINE\SOFTWARE/Distinct/Dlls\RPC32
    Cpconst
    D

    CpDelim "/"





    The first of these sets the compiler definitions option to D and the second sets
    the argument delimeter to /. If your compiler uses different values set these
    here.



    By default, preprocessing will not be invoked. To invoke preprocessing follow
    these steps below:


    To invoke the C-preprocessor use the following syntax when running
    rpcgen32:





       
    rpcgen32 -p "compiler arguments" [-D
    name=value]

    where:
    -p invokes the
    preprocessor
    "arguments" are the set of arguments required by
    your compiler
    -D is optional and is used to specify specific
    compiler definitions.





    When do you need to use C-Preprocessing?


    Your files will require C-Preprocessing when they contain #if, #else, #ifdef,
    #ifndef, #if defined etc. If the files contain these definitions please use the
    C-Preprocessor option.



    Example

    If you are using cl.exe (Microsoft's Visual C++ compiler) the
    argument should be
    -p "cl.exe /EP /nologo" file.x.

    The existing command line options can be used in conjunction with -p
    option.


    If you are using a c-preprocessor other than cl.exe please enter
    the argument list as needed. The argument list should be able to send the
    processed file to the stdout and should only contain information for rcpgen32 to
    do further processing. That is, the output must not contain any banner or text
    issued by the compiler. For Microsoft C++ the /nologo option will inhibit these.



    Warning


    The program creates a temporary file having the name of the .x file but with
    a .i extension. If a file with the same name exists, its contents will be
    overwritten. The file will be created in the directory where the output files
    are generated. This file will be cleaned up before the program exits.





D32-rpc.dll


The following problems were fixed:



  1. When used in the VC++ 6.0 environment the dll caused an access violation
    when the clnt_create() function call was called.
  2. In VC++6.0 it appears that the select() function call does not honor a specified
    timeout. This was causing an unnecessary increase in the network traffic for
    each client-server call when used under the VC++6.0 environment. A workaround to
    this problem is included in this patch.
  3. When the server is slow in responding to requests, the dll was not handling
    multiple client calls (clnt_call() function) which were sent from the same
    application in succession.
  4. Some anomalies reported that were caused by the server receiving several
    megabytes of data have been fixed.
  5. The xdr_free() routine is now correctly freeing the memory used by pmaplist.








04/26/2024   Legal notices | PRIVACY Policy |