@Override public SID getOwnerGroup ( boolean resolve ) throws IOException { try ( SmbTreeHandleImpl th = ensureTreeConnected() ) { SecurityDescriptor desc = querySecurity(th, SecurityInfo.GROUP_SECURITY_INFO); SID ownerGroup = desc.getOwnerGroupSid(); if ( ownerGroup == null ) { return null; } String server = this.fileLocator.getServerWithDfs(); if ( resolve ) { ownerGroup.resolve(server, getContext()); } else { ownerGroup.initContext(server, getContext()); } return ownerGroup; } }
@Override public SID getOwnerGroup ( boolean resolve ) throws IOException { try ( SmbTreeHandleImpl th = ensureTreeConnected() ) { SecurityDescriptor desc = querySecurity(th, SecurityInfo.GROUP_SECURITY_INFO); SID ownerGroup = desc.getOwnerGroupSid(); if ( ownerGroup == null ) { return null; } String server = this.fileLocator.getServerWithDfs(); if ( resolve ) { ownerGroup.resolve(server, getContext()); } else { ownerGroup.initContext(server, getContext()); } return ownerGroup; } }
@Override public SID getOwnerUser ( boolean resolve ) throws IOException { try ( SmbTreeHandleImpl th = ensureTreeConnected() ) { SecurityDescriptor desc = querySecurity(th, SecurityInfo.OWNER_SECURITY_INFO); SID ownerUser = desc.getOwnerUserSid(); if ( ownerUser == null ) { return null; } String server = this.fileLocator.getServerWithDfs(); if ( resolve ) { ownerUser.resolve(server, getContext()); } else { ownerUser.initContext(server, getContext()); } return ownerUser; } }
@Override public SID getOwnerUser ( boolean resolve ) throws IOException { try ( SmbTreeHandleImpl th = ensureTreeConnected() ) { SecurityDescriptor desc = querySecurity(th, SecurityInfo.OWNER_SECURITY_INFO); SID ownerUser = desc.getOwnerUserSid(); if ( ownerUser == null ) { return null; } String server = this.fileLocator.getServerWithDfs(); if ( resolve ) { ownerUser.resolve(server, getContext()); } else { ownerUser.initContext(server, getContext()); } return ownerUser; } }
private void processAces ( ACE[] aces, boolean resolveSids ) throws IOException { String server = this.fileLocator.getServerWithDfs(); int ai; if ( resolveSids ) { SID[] sids = new SID[aces.length]; for ( ai = 0; ai < aces.length; ai++ ) { sids[ ai ] = aces[ ai ].getSID(); } for ( int off = 0; off < sids.length; off += 64 ) { int len = sids.length - off; if ( len > 64 ) len = 64; getContext().getSIDResolver().resolveSids(getContext(), server, sids, off, len); } } else { for ( ai = 0; ai < aces.length; ai++ ) { aces[ ai ].getSID().initContext(server, getContext()); } } }
private void processAces ( ACE[] aces, boolean resolveSids ) throws IOException { String server = this.fileLocator.getServerWithDfs(); int ai; if ( resolveSids ) { SID[] sids = new SID[aces.length]; for ( ai = 0; ai < aces.length; ai++ ) { sids[ ai ] = aces[ ai ].getSID(); } for ( int off = 0; off < sids.length; off += 64 ) { int len = sids.length - off; if ( len > 64 ) len = 64; getContext().getSIDResolver().resolveSids(getContext(), server, sids, off, len); } } else { for ( ai = 0; ai < aces.length; ai++ ) { aces[ ai ].getSID().initContext(server, getContext()); } } }