--- PdfPKCS7_current.java	2007-02-20 11:32:00.000000000 +0100
+++ PdfPKCS7.java	2007-04-27 17:21:07.578125000 +0200
@@ -861,6 +861,19 @@
                 v.add(new DERObjectIdentifier(ID_MESSAGE_DIGEST));
                 v.add(new DERSet(new DEROctetString(secondDigest)));
                 attribute.add(new DERSequence(v));
+                
+                if (!crls.isEmpty()) {
+                    v = new ASN1EncodableVector();
+                    v.add(new DERObjectIdentifier("1.2.840.113583.1.1.8"));
+                    ASN1EncodableVector v2 = new ASN1EncodableVector();
+                    for (Iterator i = crls.iterator();i.hasNext();) {
+                        ASN1InputStream t = new ASN1InputStream(new ByteArrayInputStream((((X509CRL)i.next()).getEncoded())));
+                        v2.add(t.readObject());
+                    }
+                    v.add(new DERSet(new DERSequence(new DERTaggedObject(true, 0, new DERSequence(v2)))));
+                    attribute.add(new DERSequence(v));
+                }
+                
                 signerinfo.add(new DERTaggedObject(false, 0, new DERSet(attribute)));
             }
             // Add the digestEncryptionAlgorithm
@@ -956,6 +969,19 @@
             v.add(new DERObjectIdentifier(ID_MESSAGE_DIGEST));
             v.add(new DERSet(new DEROctetString(secondDigest)));
             attribute.add(new DERSequence(v));
+            
+            if (!crls.isEmpty()) {
+                v = new ASN1EncodableVector();
+                v.add(new DERObjectIdentifier("1.2.840.113583.1.1.8"));
+                ASN1EncodableVector v2 = new ASN1EncodableVector();
+                for (Iterator i = crls.iterator();i.hasNext();) {
+                    ASN1InputStream t = new ASN1InputStream(new ByteArrayInputStream((((X509CRL)i.next()).getEncoded())));
+                    v2.add(t.readObject());
+                }
+                v.add(new DERSet(new DERSequence(new DERTaggedObject(true, 0, new DERSequence(v2)))));
+                attribute.add(new DERSequence(v));
+            }
+            
             ByteArrayOutputStream   bOut = new ByteArrayOutputStream();
             
             ASN1OutputStream dout = new ASN1OutputStream(bOut);
