// Token: 0x06000269 RID: 617 RVA: 0x0000C1E8 File Offset: 0x0000A3E8 private static int GetBufferBoundary(BufferPoolCollection.BufferSize bufferSize) { int num = 1024; string text = bufferSize.ToString(); char c = text[text.Length - 1]; if (c == 'M') { num *= 1024; } else if (c != 'K') { throw new ArgumentException(string.Format("BufferSize format for BufferSize value {0} is not supported", bufferSize)); } return Convert.ToInt32(text.Substring(4, text.Length - 5)) * num; }
// Token: 0x060003A3 RID: 931 RVA: 0x0001496C File Offset: 0x00012B6C public StreamProxy(StreamProxy.StreamProxyType streamProxyType, Stream source, Stream target, BufferPoolCollection.BufferSize maxBufferPoolSize, BufferPoolCollection.BufferSize minBufferPoolSize, IRequestContext requestContext) : this(streamProxyType, source, target, requestContext) { this.maxBufferPoolSize = maxBufferPoolSize; this.minBufferPoolSize = minBufferPoolSize; this.currentBufferPoolSize = minBufferPoolSize; this.currentBufferPool = BufferPoolCollection.AutoCleanupCollection.Acquire(this.currentBufferPoolSize); this.buffer = this.currentBufferPool.Acquire(); this.previousBufferSize = this.buffer.Length; }
// Token: 0x0600037B RID: 891 RVA: 0x00013D18 File Offset: 0x00011F18 internal RpcHttpOutDataResponseStreamProxy(StreamProxy.StreamProxyType streamProxyType, Stream source, Stream target, BufferPoolCollection.BufferSize maxBufferSize, BufferPoolCollection.BufferSize minBufferSize, IRequestContext requestContext) : base(streamProxyType, source, target, maxBufferSize, minBufferSize, requestContext) { this.connectTimeout = RpcHttpOutDataResponseStreamProxy.RpcHttpOutConnectingTimeoutInSeconds.Value; this.isConnecting = (this.connectTimeout != TimeSpan.Zero); }
public static bool GetOpaqueContent(Stream inputStream, Stream outputStream) { bool result = false; int num = 0; using (Asn1Reader asn1Reader = new Asn1Reader(inputStream)) { while (asn1Reader.ReadNext() && asn1Reader.EncodingType == EncodingType.Sequence) { if (!asn1Reader.ReadFirstChild() || asn1Reader.EncodingType != EncodingType.ObjectIdentifier) { StorageGlobals.ContextTraceDebug <int>(ExTraceGlobals.CcInboundMimeTracer, "InboundMimeConverter.GetOpaqueContent ({0}): did not find expected ContentType=EncodingType.ObjectIdentifier", ++num); } else if (asn1Reader.ReadValueAsOID() != OID.RSASignedData) { StorageGlobals.ContextTraceDebug <int>(ExTraceGlobals.CcInboundMimeTracer, "InboundMimeConverter.GetOpaqueContent ({0}): did not find expected RSA_signedData OID", ++num); } else if (!asn1Reader.ReadNextSibling() || asn1Reader.TagClass != TagClass.Context || asn1Reader.TagNumber != 0) { StorageGlobals.ContextTraceDebug <int>(ExTraceGlobals.CcInboundMimeTracer, "InboundMimeConverter.GetOpaqueContent ({0}): did not find expected content tag", ++num); } else if (!asn1Reader.ReadFirstChild() || asn1Reader.EncodingType != EncodingType.Sequence) { StorageGlobals.ContextTraceDebug <int>(ExTraceGlobals.CcInboundMimeTracer, "InboundMimeConverter.GetOpaqueContent ({0}): did not find expected EncodingType.Sequence", ++num); } else if (!asn1Reader.ReadFirstChild() || asn1Reader.EncodingType != EncodingType.Integer) { StorageGlobals.ContextTraceDebug <int>(ExTraceGlobals.CcInboundMimeTracer, "InboundMimeConverter.GetOpaqueContent ({0}): did not find expected version number", ++num); } else if (!asn1Reader.ReadNextSibling() || asn1Reader.EncodingType != EncodingType.Set) { StorageGlobals.ContextTraceDebug <int>(ExTraceGlobals.CcInboundMimeTracer, "InboundMimeConverter.GetOpaqueContent ({0}): did not find expected digest algorithm set", ++num); } else if (!asn1Reader.ReadNextSibling() || asn1Reader.EncodingType != EncodingType.Sequence) { StorageGlobals.ContextTraceDebug <int>(ExTraceGlobals.CcInboundMimeTracer, "InboundMimeConverter.GetOpaqueContent ({0}): did not find expected content tag", ++num); } else if (!asn1Reader.ReadFirstChild() || asn1Reader.EncodingType != EncodingType.ObjectIdentifier) { StorageGlobals.ContextTraceDebug <int>(ExTraceGlobals.CcInboundMimeTracer, "InboundMimeConverter.GetOpaqueContent ({0}): did not find expected ContentType = EncodingType.ObjectIdentifier for SignedData", ++num); } else if (asn1Reader.ReadValueAsOID() != OID.RSAData) { StorageGlobals.ContextTraceDebug <int>(ExTraceGlobals.CcInboundMimeTracer, "InboundMimeConverter.GetOpaqueContent ({0}): did not find expected RSA_Data OID", ++num); } else if (!asn1Reader.ReadNextSibling()) { StorageGlobals.ContextTraceDebug <int>(ExTraceGlobals.CcInboundMimeTracer, "InboundMimeConverter.GetOpaqueContent ({0}): did not find any content in S/MIME blob", ++num); } else if (asn1Reader.TagClass != TagClass.Context || asn1Reader.TagNumber != 0) { StorageGlobals.ContextTraceDebug <int>(ExTraceGlobals.CcInboundMimeTracer, "InboundMimeConverter.GetOpaqueContent ({0}): did not find expected tag class or value for S/MIME blob", ++num); } else if (!asn1Reader.ReadFirstChild() || asn1Reader.EncodingType != EncodingType.OctetString) { StorageGlobals.ContextTraceDebug <int>(ExTraceGlobals.CcInboundMimeTracer, "InboundMimeConverter.GetOpaqueContent ({0}): did not find expected EncodingType for S/MIME blob", ++num); } else { BufferPoolCollection.BufferSize bufferSize = BufferPoolCollection.BufferSize.Size20K; BufferPool bufferPool = BufferPoolCollection.AutoCleanupCollection.Acquire(bufferSize); byte[] array = null; try { array = bufferPool.Acquire(); do { if (!asn1Reader.IsConstructedTag) { for (;;) { int num2 = asn1Reader.ReadBytesValue(array, 0, array.Length); if (num2 == 0) { break; } outputStream.Write(array, 0, num2); result = true; } } asn1Reader.ReadNext(); }while (asn1Reader.EncodingType == EncodingType.OctetString); continue; } finally { if (array != null) { bufferPool.Release(array); } } } return(result); } StorageGlobals.ContextTraceDebug <int>(ExTraceGlobals.CcInboundMimeTracer, "InboundMimeConverter.GetOpaqueContent ({0}): did not find expected ContentInfo=EncodingType.Sequence", ++num); } return(result); }