public ACE[] getSecurity(boolean resolveSids) throws IOException {
        int f;
        ACE[] aces;

        f = open0( O_RDONLY, READ_CONTROL, 0, isDirectory() ? 1 : 0 );

        /*
         * NtTrans Query Security Desc Request / Response
         */

        NtTransQuerySecurityDesc request = new NtTransQuerySecurityDesc( f, 0x04 );
        NtTransQuerySecurityDescResponse response = new NtTransQuerySecurityDescResponse();

        try {
            send( request, response );
            aces = response.securityDescriptor.aces;
            if (aces != null)
                processAces(aces, resolveSids);
        } finally {
            try {
                close( f, 0L );
            } catch(SmbException se) {
                if (log.level >= 1)
                    se.printStackTrace(log);
            }
        }

        return aces;
    }
public ACE [ ] getSecurity ( boolean resolveSids ) throws IOException { int f ; ACE [ ] aces ; f = open0 ( O_RDONLY , READ_CONTROL , 0 , isDirectory ( ) ? 1 : 0 ) ; NtTransQuerySecurityDesc request = new NtTransQuerySecurityDesc ( f , 0x04 ) ; NtTransQuerySecurityDescResponse response = new NtTransQuerySecurityDescResponse ( ) ; try { send ( request , response ) ; aces = response . securityDescriptor . aces ; if ( aces != null ) processAces ( aces , resolveSids ) ; } finally { try { close ( f , 0L ) ; } catch ( SmbException se ) { if ( log . level >= 1 ) se . printStackTrace ( log ) ; } } return aces ; }
Return an array of Access Control Entry (ACE) objects representing
the security descriptor associated with this file or directory.
If no DACL is present, null is returned. If the DACL is empty, an array with 0 elements is returned.
@param resolveSids Attempt to resolve the SIDs within each ACE form
their numeric representation to their corresponding account names.