BEROctetStringParser.cs 833 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. #if !BESTHTTP_DISABLE_ALTERNATE_SSL && (!UNITY_WEBGL || UNITY_EDITOR)
  2. #pragma warning disable
  3. using System;
  4. using System.IO;
  5. using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.IO;
  6. namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1
  7. {
  8. public class BerOctetStringParser
  9. : Asn1OctetStringParser
  10. {
  11. private readonly Asn1StreamParser _parser;
  12. internal BerOctetStringParser(
  13. Asn1StreamParser parser)
  14. {
  15. _parser = parser;
  16. }
  17. public Stream GetOctetStream()
  18. {
  19. return new ConstructedOctetStream(_parser);
  20. }
  21. public Asn1Object ToAsn1Object()
  22. {
  23. try
  24. {
  25. return new BerOctetString(Streams.ReadAll(GetOctetStream()));
  26. }
  27. catch (IOException e)
  28. {
  29. throw new Asn1ParsingException("IOException converting stream to byte array: " + e.Message, e);
  30. }
  31. }
  32. }
  33. }
  34. #pragma warning restore
  35. #endif