NWGetEffectiveRightsExt

Returns effective rights for the specified directory

Local Servers:blocking
Remote Servers:blocking
NetWare Server:6.5 SP2 or later
Platform:NLM, Windows 2000, Windows XP
Client:4.90 SP2 or later
Library:Cross-Platform NetWare Calls (CAL*.*)
Service:File System

Syntax

   #include <nwdentry.h> 
   or 
   #include <nwcalls.h> 
    
   N_EXTERN_LIBRARY(NWCCODE) NWGetEffectiveRightsExt ( 
      NWCONN_HANDLE       conn,  
      NWDIR_HANDLE        dirHandle,  
      const nstr8 N_FAR  *path,  
      pnuint16            effectiveRights);
   

Parameters

conn

(IN) Specifies the NetWare server connection handle.

dirHandle

(IN) Specifies the NetWare directory handle associated with the directory path for which the effective rights are desired (0 if the path parameter points to the complete path, including the volume name).

path

(IN) Points to the absolute path (or a path relative to the dirHandle parameter) of the directory whose effective rights mask is being returned. The characters in the string must be UTF-8.

effectiveRights

(OUT) Points to the effective rights mask for the directory. (See Remarks for a list of values.)

Return Values

These are common return values; see Return Values (Return Values for C) for more information.

0x0000

SUCCESSFUL

0x8801

INVALID_CONNECTION

0x88F0

UTF8_CONVERSION_FAILED

0x890A

NLM_INVALID_CONNECTION

0x8996

SERVER_OUT_OF_MEMORY

0x8998

VOLUME_DOES_NOT_EXIST

0x899B

BAD_DIRECTORY_HANDLE

0x899C

INVALID_PATH

0x89A1

DIRECTORY_IO_ERROR

0x89FD

BAD_STATION_NUMBER

0x89FF

Failure

Remarks

To determine the effective rights of the requesting workstation, NWGetEffectiveRightsExt performs a logical AND between the maximum rights mask of the directory and the current trustee rights of the workstation.

The current trustee rights are obtained by performing a logical OR between a trustee access mask and the trustee access mask of any object to which the process is security equivalent.

The current trustee rights can be explicitly listed in the directory or inherited from the parent directory. The maximum rights masks of parent directories do not affect inherited trustee rights.

The effectiveRights parameter returned to the client indicates which of the eight possible directory rights the client has in the targeted directory. An effectiveRights parameter of zero indicates the client has no rights in the target directory.

The maximum rights mask bits are defined in the table below:

C Value

Value Description

0x0001

TR_READ

0x0002

TR_WRITE

0x0008

TR_CREATE

0x0010

TR_DELETE

0x0010

TR_OWNERSHIP

0x0040

TR_FILE_SCAN

0x0080

TR_MODIFY

NWGetEffectiveRightsExt works on files as well as directories.

NCP Calls