Files
27Aug2021-Cpp2IL-Dump/Assembly-CSharp/BestHTTP/SecureProtocol/Org/BouncyCastle/Asn1/BerOctetStringGenerator.cs
T
niko c12fbe3fc6 m
2026-04-12 16:51:38 +02:00

171 lines
5.1 KiB
C#

using System;
using System.IO;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.IO;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1
{
// Token: 0x02001E67 RID: 7783
[Token(Token = "0x2001E67")]
public class BerOctetStringGenerator : BerGenerator
{
// Token: 0x0600C333 RID: 49971 RVA: 0x002C1FD8 File Offset: 0x002C01D8
[Token(Token = "0x600C333")]
[Address(RVA = "0x2295020", Offset = "0x2294020", VA = "0x182295020")]
public BerOctetStringGenerator(Stream outStream)
{
this._out = outStream;
base.WriteBerHeader(36);
}
// Token: 0x0600C334 RID: 49972 RVA: 0x002C1FFC File Offset: 0x002C01FC
[Token(Token = "0x600C334")]
[Address(RVA = "0x2295060", Offset = "0x2294060", VA = "0x182295060")]
public BerOctetStringGenerator(Stream outStream, int tagNo, bool isExplicit)
{
this._out = outStream;
this._isExplicit = isExplicit;
this._tagNo = tagNo;
base.WriteBerHeader(36);
}
// Token: 0x0600C335 RID: 49973 RVA: 0x002C202C File Offset: 0x002C022C
[Token(Token = "0x600C335")]
[Address(RVA = "0x2294E90", Offset = "0x2293E90", VA = "0x182294E90")]
public Stream GetOctetOutputStream()
{
byte[] array = new byte[1000];
return this.GetOctetOutputStream(array);
}
// Token: 0x0600C336 RID: 49974 RVA: 0x002C204C File Offset: 0x002C024C
[Token(Token = "0x600C336")]
[Address(RVA = "0x2294EE0", Offset = "0x2293EE0", VA = "0x182294EE0")]
public Stream GetOctetOutputStream(int bufSize)
{
if (bufSize < 1)
{
}
byte[] array = new byte[bufSize];
return this.GetOctetOutputStream(array);
}
// Token: 0x0600C337 RID: 49975 RVA: 0x002C206C File Offset: 0x002C026C
[Token(Token = "0x600C337")]
[Address(RVA = "0x2294F60", Offset = "0x2293F60", VA = "0x182294F60")]
public Stream GetOctetOutputStream(byte[] buf)
{
BerOctetStringGenerator.BufferedBerOctetStream bufferedBerOctetStream;
bufferedBerOctetStream._gen = this;
bufferedBerOctetStream._buf = buf;
bufferedBerOctetStream._off = (int)((ulong)0L);
DerOutputStream derOutputStream = new DerOutputStream(this._out);
bufferedBerOctetStream._derOut = derOutputStream;
throw new NullReferenceException();
}
// Token: 0x02001E68 RID: 7784
[Token(Token = "0x2001E68")]
private class BufferedBerOctetStream : BaseOutputStream
{
// Token: 0x0600C338 RID: 49976 RVA: 0x002C20A8 File Offset: 0x002C02A8
[Token(Token = "0x600C338")]
[Address(RVA = "0x2298010", Offset = "0x2297010", VA = "0x182298010")]
internal BufferedBerOctetStream(BerOctetStringGenerator gen, byte[] buf)
{
this._gen = gen;
this._buf = buf;
this._off = (int)((ulong)0L);
DerOutputStream derOutputStream = new DerOutputStream(gen._out);
this._derOut = derOutputStream;
}
// Token: 0x0600C339 RID: 49977 RVA: 0x002C20EC File Offset: 0x002C02EC
[Token(Token = "0x600C339")]
[Address(RVA = "0x2297E50", Offset = "0x2296E50", VA = "0x182297E50", Slot = "30")]
public override void WriteByte(byte b)
{
byte[] buf = this._buf;
int num = this._off + 1;
this._off = num;
byte[] buf2 = this._buf;
int off = this._off;
if (off == buf2.Length)
{
DerOutputStream derOut = this._derOut;
int num2 = 0;
DerOctetString.Encode(derOut, buf2, num2, off);
this._off = (int)((ulong)0L);
}
}
// Token: 0x0600C33A RID: 49978 RVA: 0x002C214C File Offset: 0x002C034C
[Token(Token = "0x600C33A")]
[Address(RVA = "0x2297ED0", Offset = "0x2296ED0", VA = "0x182297ED0", Slot = "29")]
public override void Write(byte[] buf, int offset, int len)
{
if (len > 0)
{
int num = 0;
byte[] buf2 = this._buf;
int off = this._off;
int num2 = buf2.Length;
num2 -= off;
int num3 = Math.Min(len, num2);
byte[] buf3 = this._buf;
if (num3 != buf3.Length)
{
int off2 = this._off;
Array.Copy(buf, offset, buf3, off2, num3);
int num4 = this._off;
byte[] buf4 = this._buf;
num4 += num3;
this._off = num4;
DerOutputStream derOut = this._derOut;
int num5 = 0;
DerOctetString.Encode(derOut, buf4, num5, num4);
this._off = num;
}
DerOctetString.Encode(this._derOut, buf, offset, len);
}
}
// Token: 0x0600C33B RID: 49979 RVA: 0x002C2200 File Offset: 0x002C0400
[Token(Token = "0x600C33B")]
[Address(RVA = "0x2297E00", Offset = "0x2296E00", VA = "0x182297E00", Slot = "15")]
public override void Close()
{
int off = this._off;
if (off != 0)
{
byte[] buf = this._buf;
int num = 0;
DerOctetString.Encode(this._derOut, buf, num, off);
}
this._gen.WriteBerEnd();
base.Close();
}
// Token: 0x04007B40 RID: 31552
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x4007B40")]
private byte[] _buf;
// Token: 0x04007B41 RID: 31553
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x4007B41")]
private int _off;
// Token: 0x04007B42 RID: 31554
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x4007B42")]
private readonly BerOctetStringGenerator _gen;
// Token: 0x04007B43 RID: 31555
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x4007B43")]
private readonly DerOutputStream _derOut;
}
}
}