internal OpenPgpDigitalSignature (PgpPublicKey pubkey, PgpOnePassSignature signature) { SignerCertificate = pubkey != null ? new OpenPgpDigitalCertificate (pubkey) : null; OnePassSignature = signature; }
public PgpOnePassSignatureList( PgpOnePassSignature sig) { this.sigs = new PgpOnePassSignature[] { sig }; }
/// <summary>Return the next object in the stream, or null if the end is reached.</summary> /// <exception cref="IOException">On a parse error</exception> public PgpObject NextPgpObject() { PacketTag tag = bcpgIn.NextPacketTag(); if ((int)tag == -1) { return(null); } switch (tag) { case PacketTag.Signature: { IList l = Platform.CreateArrayList(); while (bcpgIn.NextPacketTag() == PacketTag.Signature) { try { l.Add(new PgpSignature(bcpgIn)); } catch (PgpException e) { throw new IOException("can't create signature object: " + e); } } PgpSignature[] sigs = new PgpSignature[l.Count]; for (int i = 0; i < l.Count; ++i) { sigs[i] = (PgpSignature)l[i]; } return(new PgpSignatureList(sigs)); } case PacketTag.SecretKey: try { return(new PgpSecretKeyRing(bcpgIn)); } catch (PgpException e) { throw new IOException("can't create secret key object: " + e); } case PacketTag.PublicKey: return(new PgpPublicKeyRing(bcpgIn)); // TODO Make PgpPublicKey a PgpObject or return a PgpPublicKeyRing // case PacketTag.PublicSubkey: // return PgpPublicKeyRing.ReadSubkey(bcpgIn); case PacketTag.CompressedData: return(new PgpCompressedData(bcpgIn)); case PacketTag.LiteralData: return(new PgpLiteralData(bcpgIn)); case PacketTag.PublicKeyEncryptedSession: case PacketTag.SymmetricKeyEncryptedSessionKey: return(new PgpEncryptedDataList(bcpgIn)); case PacketTag.OnePassSignature: { IList l = Platform.CreateArrayList(); while (bcpgIn.NextPacketTag() == PacketTag.OnePassSignature) { try { l.Add(new PgpOnePassSignature(bcpgIn)); } catch (PgpException e) { throw new IOException("can't create one pass signature object: " + e); } } PgpOnePassSignature[] sigs = new PgpOnePassSignature[l.Count]; for (int i = 0; i < l.Count; ++i) { sigs[i] = (PgpOnePassSignature)l[i]; } return(new PgpOnePassSignatureList(sigs)); } case PacketTag.Marker: return(new PgpMarker(bcpgIn)); case PacketTag.Experimental1: case PacketTag.Experimental2: case PacketTag.Experimental3: case PacketTag.Experimental4: return(new PgpExperimental(bcpgIn)); } throw new IOException("unknown object in stream " + bcpgIn.NextPacketTag()); }
/// <summary>Return the next object in the stream, or null if the end is reached.</summary> /// <exception cref="IOException">On a parse error</exception> public PgpObject NextPgpObject() { PacketTag tag = bcpgIn.NextPacketTag(); if ((int) tag == -1) return null; switch (tag) { case PacketTag.Signature: { IList l = Platform.CreateArrayList(); while (bcpgIn.NextPacketTag() == PacketTag.Signature) { try { l.Add(new PgpSignature(bcpgIn)); } catch (PgpException e) { throw new IOException("can't create signature object: " + e); } } PgpSignature[] sigs = new PgpSignature[l.Count]; for (int i = 0; i < l.Count; ++i) { sigs[i] = (PgpSignature)l[i]; } return new PgpSignatureList(sigs); } case PacketTag.SecretKey: try { return new PgpSecretKeyRing(bcpgIn); } catch (PgpException e) { throw new IOException("can't create secret key object: " + e); } case PacketTag.PublicKey: return new PgpPublicKeyRing(bcpgIn); // TODO Make PgpPublicKey a PgpObject or return a PgpPublicKeyRing // case PacketTag.PublicSubkey: // return PgpPublicKeyRing.ReadSubkey(bcpgIn); case PacketTag.CompressedData: return new PgpCompressedData(bcpgIn); case PacketTag.LiteralData: return new PgpLiteralData(bcpgIn); case PacketTag.PublicKeyEncryptedSession: case PacketTag.SymmetricKeyEncryptedSessionKey: return new PgpEncryptedDataList(bcpgIn); case PacketTag.OnePassSignature: { IList l = Platform.CreateArrayList(); while (bcpgIn.NextPacketTag() == PacketTag.OnePassSignature) { try { l.Add(new PgpOnePassSignature(bcpgIn)); } catch (PgpException e) { throw new IOException("can't create one pass signature object: " + e); } } PgpOnePassSignature[] sigs = new PgpOnePassSignature[l.Count]; for (int i = 0; i < l.Count; ++i) { sigs[i] = (PgpOnePassSignature)l[i]; } return new PgpOnePassSignatureList(sigs); } case PacketTag.Marker: return new PgpMarker(bcpgIn); case PacketTag.Experimental1: case PacketTag.Experimental2: case PacketTag.Experimental3: case PacketTag.Experimental4: return new PgpExperimental(bcpgIn); } throw new IOException("unknown object in stream " + bcpgIn.NextPacketTag()); }
public PgpOnePassSignatureList(PgpOnePassSignature sig) { sigs = new PgpOnePassSignature[1] { sig }; }
public PgpOnePassSignatureList( PgpOnePassSignature sig) { this.sigs = new PgpOnePassSignature[]{ sig }; }
public PgpOnePassSignatureList( PgpOnePassSignature[] sigs) { this.sigs = (PgpOnePassSignature[]) sigs.Clone(); }
} //IL_0003: Unknown result type (might be due to invalid IL or missing references) //IL_000d: Expected O, but got Unknown public PgpObject NextPgpObject() { //IL_0091: Unknown result type (might be due to invalid IL or missing references) //IL_00fe: Unknown result type (might be due to invalid IL or missing references) //IL_0160: Unknown result type (might be due to invalid IL or missing references) //IL_01e5: Unknown result type (might be due to invalid IL or missing references) PacketTag packetTag = bcpgIn.NextPacketTag(); if (packetTag == (PacketTag)(-1)) { return(null); } switch (packetTag) { case PacketTag.Signature: { global::System.Collections.IList list2 = Platform.CreateArrayList(); while (bcpgIn.NextPacketTag() == PacketTag.Signature) { try { list2.Add((object)new PgpSignature(bcpgIn)); } catch (PgpException ex3) { throw new IOException(string.Concat((object)"can't create signature object: ", (object)ex3)); } } PgpSignature[] array2 = new PgpSignature[((global::System.Collections.ICollection)list2).get_Count()]; for (int j = 0; j < ((global::System.Collections.ICollection)list2).get_Count(); j++) { array2[j] = (PgpSignature)list2.get_Item(j); } return(new PgpSignatureList(array2)); } case PacketTag.SecretKey: try { return(new PgpSecretKeyRing((Stream)(object)bcpgIn)); } catch (PgpException ex2) { throw new IOException(string.Concat((object)"can't create secret key object: ", (object)ex2)); } case PacketTag.PublicKey: return(new PgpPublicKeyRing((Stream)(object)bcpgIn)); case PacketTag.CompressedData: return(new PgpCompressedData(bcpgIn)); case PacketTag.LiteralData: return(new PgpLiteralData(bcpgIn)); case PacketTag.PublicKeyEncryptedSession: case PacketTag.SymmetricKeyEncryptedSessionKey: return(new PgpEncryptedDataList(bcpgIn)); case PacketTag.OnePassSignature: { global::System.Collections.IList list = Platform.CreateArrayList(); while (bcpgIn.NextPacketTag() == PacketTag.OnePassSignature) { try { list.Add((object)new PgpOnePassSignature(bcpgIn)); } catch (PgpException ex) { throw new IOException(string.Concat((object)"can't create one pass signature object: ", (object)ex)); } } PgpOnePassSignature[] array = new PgpOnePassSignature[((global::System.Collections.ICollection)list).get_Count()]; for (int i = 0; i < ((global::System.Collections.ICollection)list).get_Count(); i++) { array[i] = (PgpOnePassSignature)list.get_Item(i); } return(new PgpOnePassSignatureList(array)); } case PacketTag.Marker: return(new PgpMarker(bcpgIn)); case PacketTag.Experimental1: case PacketTag.Experimental2: case PacketTag.Experimental3: case PacketTag.Experimental4: return(new PgpExperimental(bcpgIn)); default: throw new IOException(string.Concat((object)"unknown object in stream ", (object)bcpgIn.NextPacketTag())); } }