public NspiStatus UpdateStat() { this.MarshalStatToNative(); NspiStatus result = this.client.UpdateStat(this.statHandle.DangerousGetHandle()); this.MarshalNativeToStat(); return(result); }
public NspiStatus CompareMids(int mid1, int mid2, out int result) { this.MarshalStatToNative(); NspiStatus result2 = this.client.CompareMids(this.statHandle.DangerousGetHandle(), mid1, mid2, out result); this.MarshalNativeToStat(); return(result2); }
public NspiStatus QueryColumns(NspiQueryColumnsFlags flags, out PropTag[] propTags) { int[] propTagsAsInts; NspiStatus result = this.client.QueryColumns((int)flags, out propTagsAsInts); propTags = NspiClient.GetPropTagArrayFromIntArray(propTagsAsInts); return(result); }
public NspiStatus GetTemplateInfo(NspiGetTemplateInfoFlags flags, int type, string dn, int codePage, int localeId, out PropRow row) { SafeRpcMemoryHandle rowHandle; NspiStatus templateInfo = this.client.GetTemplateInfo(flags, type, dn, codePage, localeId, out rowHandle); row = NspiClient.GetRowAndDisposeHandle(rowHandle); return(templateInfo); }
public NspiStatus ResortRestriction(int[] mids, out int[] returnedMids) { this.MarshalStatToNative(); NspiStatus result = this.client.ResortRestriction(this.statHandle.DangerousGetHandle(), mids, out returnedMids); this.MarshalNativeToStat(); return(result); }
public NspiStatus GetHierarchyInfo(NspiGetHierarchyInfoFlags flags, ref uint version, out PropRowSet rowset) { this.MarshalStatToNative(); SafeRpcMemoryHandle rowsetHandle; NspiStatus hierarchyInfo = this.client.GetHierarchyInfo(flags, this.statHandle.DangerousGetHandle(), ref version, out rowsetHandle); this.MarshalNativeToStat(); rowset = NspiClient.GetRowSetAndDisposeHandle(rowsetHandle); return(hierarchyInfo); }
internal void Append(string operation, NspiStatus status, int queuedTime, int processingTime) { if (ProtocolLog.Enabled) { this.Append(operation, (status == NspiStatus.Success || status == NspiStatus.UnbindSuccess) ? null : string.Format(NumberFormatInfo.InvariantInfo, "{0:X}", new object[] { (int)status }), queuedTime, processingTime); } }
public NspiStatus GetPropList(NspiGetPropListFlags flags, int mid, int codePage, out PropTag[] props) { this.MarshalStatToNative(); int[] propTagsAsInts; NspiStatus propList = this.client.GetPropList(flags, mid, codePage, out propTagsAsInts); this.MarshalNativeToStat(); props = NspiClient.GetPropTagArrayFromIntArray(propTagsAsInts); return(propList); }
public NspiStatus QueryRows(NspiQueryRowsFlags flags, int[] mids, int count, IList <PropTag> propTags, out PropRowSet rowset) { int[] intArrayFromPropTagArray = NspiClient.GetIntArrayFromPropTagArray(propTags); this.MarshalStatToNative(); SafeRpcMemoryHandle rowsetHandle; NspiStatus result = this.client.QueryRows(flags, this.statHandle.DangerousGetHandle(), mids, count, intArrayFromPropTagArray, out rowsetHandle); this.MarshalNativeToStat(); rowset = NspiClient.GetRowSetAndDisposeHandle(rowsetHandle); return(result); }
public NspiStatus GetProps(NspiGetPropsFlags flags, IList <PropTag> propTags, out PropRow row) { int[] intArrayFromPropTagArray = NspiClient.GetIntArrayFromPropTagArray(propTags); this.MarshalStatToNative(); SafeRpcMemoryHandle rowHandle; NspiStatus props = this.client.GetProps(flags, this.statHandle.DangerousGetHandle(), intArrayFromPropTagArray, out rowHandle); this.MarshalNativeToStat(); row = NspiClient.GetRowAndDisposeHandle(rowHandle); return(props); }
public NspiStatus Bind(NspiBindFlags flags) { NspiStatus result; using (SafeRpcMemoryHandle safeRpcMemoryHandle = new SafeRpcMemoryHandle(16)) { this.MarshalStatToNative(); NspiStatus nspiStatus = this.client.Bind(flags, this.statHandle.DangerousGetHandle(), safeRpcMemoryHandle.DangerousGetHandle()); this.MarshalNativeToStat(); byte[] array = new byte[16]; Marshal.Copy(safeRpcMemoryHandle.DangerousGetHandle(), array, 0, array.Length); this.serverGuid = new Guid(array); this.needToUnbind = (nspiStatus == NspiStatus.Success); result = nspiStatus; } return(result); }
public NspiStatus ModProps(IList <PropTag> propTags, PropRow row) { int[] intArrayFromPropTagArray = NspiClient.GetIntArrayFromPropTagArray(propTags); NspiStatus result; using (SafeRpcMemoryHandle safeRpcMemoryHandle = new SafeRpcMemoryHandle(row.GetBytesToMarshal())) { SafeRpcMemoryHandle safeRpcMemoryHandle2 = NspiMarshal.MarshalPropValueCollection(row.Properties); row.MarshalledPropertiesHandle = safeRpcMemoryHandle2; safeRpcMemoryHandle.AddAssociatedHandle(safeRpcMemoryHandle2); row.MarshalToNative(safeRpcMemoryHandle); this.MarshalStatToNative(); NspiStatus nspiStatus = this.client.ModProps(this.statHandle.DangerousGetHandle(), intArrayFromPropTagArray, safeRpcMemoryHandle.DangerousGetHandle()); this.MarshalNativeToStat(); result = nspiStatus; } return(result); }
public NspiStatus SeekEntries(PropValue propValue, int[] mids, IList <PropTag> propTags, out PropRowSet rowset) { int[] intArrayFromPropTagArray = NspiClient.GetIntArrayFromPropTagArray(propTags); IList <PropValue> list = new List <PropValue>(); list.Add(propValue); NspiStatus result; using (SafeRpcMemoryHandle safeRpcMemoryHandle = new SafeRpcMemoryHandle(propValue.GetBytesToMarshal())) { PropValue.MarshalToNative(list, safeRpcMemoryHandle); this.MarshalStatToNative(); SafeRpcMemoryHandle rowsetHandle; NspiStatus nspiStatus = this.client.SeekEntries(this.statHandle.DangerousGetHandle(), safeRpcMemoryHandle.DangerousGetHandle(), mids, intArrayFromPropTagArray, out rowsetHandle); this.MarshalNativeToStat(); rowset = NspiClient.GetRowSetAndDisposeHandle(rowsetHandle); result = nspiStatus; } return(result); }
public NspiStatus GetMatches(Restriction restriction, object propName, int maxRows, IList <PropTag> propTags, out int[] mids, out PropRowSet rowset) { NspiStatus result; using (SafeRpcMemoryHandle safeRpcMemoryHandle = new SafeRpcMemoryHandle()) { if (restriction != null) { safeRpcMemoryHandle.Allocate(restriction.GetBytesToMarshalNspi()); restriction.MarshalToNativeNspi(safeRpcMemoryHandle); } int[] intArrayFromPropTagArray = NspiClient.GetIntArrayFromPropTagArray(propTags); this.MarshalStatToNative(); SafeRpcMemoryHandle rowsetHandle; NspiStatus matches = this.client.GetMatches(this.statHandle.DangerousGetHandle(), safeRpcMemoryHandle.DangerousGetHandle(), IntPtr.Zero, maxRows, intArrayFromPropTagArray, out mids, out rowsetHandle); this.MarshalNativeToStat(); rowset = NspiClient.GetRowSetAndDisposeHandle(rowsetHandle); result = matches; } return(result); }
// Token: 0x060001B0 RID: 432 RVA: 0x000092E8 File Offset: 0x000074E8 public NspiStatus Connect() { NspiConnection.NspiConnectionTracer.TraceDebug <string>(0L, "NspiConnection.Connect: owningPool.Server={0}", this.owningPool.Server ?? "(null)"); NspiClient nspiClient = null; for (int i = 0; i < 3; i++) { try { if (i != 0) { Thread.Sleep(NspiConnection.RetryInterval); } nspiClient = new NspiClient(this.owningPool.Server); NspiStatus nspiStatus = nspiClient.Bind(NspiBindFlags.None); if (nspiStatus == NspiStatus.Success) { NspiConnection.NspiConnectionTracer.TraceDebug <string>(0L, "Bind to {0} succeeded", this.owningPool.Server ?? "(null)"); this.client = nspiClient; nspiClient = null; return(NspiStatus.Success); } NspiConnection.NspiConnectionTracer.TraceDebug <string, NspiStatus>(0L, "Bind to {0} failed with status {1}", this.owningPool.Server ?? "(null)", nspiStatus); } catch (RpcException innerException) { throw new ADTransientException(DirectoryStrings.ExceptionServerUnavailable(this.owningPool.Server), innerException); } finally { if (nspiClient != null) { nspiClient.Dispose(); nspiClient = null; } } } NspiConnection.NspiConnectionTracer.TraceDebug <int, string>(0L, "All {0} attempts to connect to {1} failed", 3, this.owningPool.Server ?? "(null)"); return(NspiStatus.GeneralFailure); }
public NspiStatus ResolveNames(byte[][] names, IList <PropTag> propTags, out ResolveResult[] results, out PropRowSet rowset) { int[] intArrayFromPropTagArray = NspiClient.GetIntArrayFromPropTagArray(propTags); this.MarshalStatToNative(); int[] array; SafeRpcMemoryHandle rowsetHandle; NspiStatus result = this.client.ResolveNames(this.statHandle.DangerousGetHandle(), intArrayFromPropTagArray, names, out array, out rowsetHandle); this.MarshalNativeToStat(); rowset = NspiClient.GetRowSetAndDisposeHandle(rowsetHandle); if (array != null) { results = new ResolveResult[array.Length]; for (int i = 0; i < array.Length; i++) { results[i] = (ResolveResult)array[i]; } } else { results = null; } return(result); }
internal NspiException(NspiStatus status, string message) : base(message) { base.HResult = (int)status; }
// Token: 0x060001A7 RID: 423 RVA: 0x00009234 File Offset: 0x00007434 private NspiStatus EndWrapper(string methodName, ICancelableAsyncResult asyncResult, bool rundownContextOnFailure, Func <NspiDispatchTask, NspiStatus> endDelegate) { int contextHandle = 0; NspiStatus nspiStatus = NspiStatus.Success; NspiAsyncDispatch.ConditionalExceptionWrapper(ExTraceGlobals.NspiTracer.IsTraceEnabled(TraceType.DebugTrace), delegate { bool flag = false; try { DispatchTaskAsyncResult dispatchTaskAsyncResult = asyncResult as DispatchTaskAsyncResult; if (dispatchTaskAsyncResult != null) { NspiDispatchTask nspiDispatchTask = (NspiDispatchTask)dispatchTaskAsyncResult.DispatchTask; contextHandle = nspiDispatchTask.ContextHandle; using (DisposeGuard disposeGuard = default(DisposeGuard)) { disposeGuard.Add <NspiDispatchTask>(nspiDispatchTask); try { nspiStatus = endDelegate(nspiDispatchTask); } finally { if (nspiDispatchTask.IsContextRundown && contextHandle != 0) { this.ContextHandleRundown(new IntPtr(contextHandle)); contextHandle = 0; } } } ExTraceGlobals.NspiTracer.TraceDebug <string, int, NspiStatus>(0, 0L, "{0} succeeded. ContextHandle={1} NspiStatus={2}.", methodName, contextHandle, nspiStatus); flag = true; } else { FailureAsyncResult <NspiStatus> failureAsyncResult = asyncResult as FailureAsyncResult <NspiStatus>; if (failureAsyncResult == null) { throw new InvalidOperationException(string.Format("Invalid IAsyncResult encountered; {0}", asyncResult)); } nspiStatus = failureAsyncResult.ErrorCode; ExTraceGlobals.NspiTracer.TraceDebug(0, 0L, "{0} failed. ContextHandle={1} NspiStatus={2}. Exception={3}.", new object[] { methodName, failureAsyncResult.ContextHandle.ToInt32(), nspiStatus, failureAsyncResult.Exception }); } } finally { if (!flag && rundownContextOnFailure && contextHandle != 0) { this.ContextHandleRundown(new IntPtr(contextHandle)); } } }, delegate(Exception exception) { ExTraceGlobals.NspiTracer.TraceDebug <string, int, Exception>(0, 0L, "{0} failed. ContextHandle={1}, Exception={2}.", methodName, contextHandle, exception); }); return(nspiStatus); }