@@ -663,4 +663,77 @@ var UTIL = require('../../lib/util');
663663 'mthwYiI/c1op4Y+H0xLUp2v8iLWHIDqAZA89\r\n' +
664664 '-----END CERTIFICATE-----\r\n'
665665 } ;
666+ it ( 'Issue #1127 optional macData is okay rfc5280#section-4.1.1.2' , function ( ) {
667+ const b64Pfx = 'MIIKYAIBAzCCChwGCSqGSIb3DQEHAaCCCg0EggoJMIIKBTCCBhYGCS' +
668+ 'qGSIb3DQEHAaCCBgcEggYDMIIF/zCCBfsGCyqGSIb3DQEMCgECoIIE' +
669+ '/jCCBPowHAYKKoZIhvcNAQwBAzAOBAincEwP070FfwICB9AEggTYAp' +
670+ 'l1Qli9YrCjwjmLrbl4oOA4pMPgJts4t0kC8NSt16eJ9SZHF61R7xzT' +
671+ 'fsxP2OoUn0ZDcXERvNd0vv7gHNdLA4tz3pf95mRPtpt3ApqhF6A3pF' +
672+ 'ziC7YWu9Swf+I0HrCy1I4iHcqRNrfWxsXEZn+w3bkPRaS75MOpzKsJ' +
673+ 'IG8qWw1oe+W3X56lvjD69pcFEsrKZPA50WdIZ5HCtDzHnHkdo4HFR9' +
674+ 'qLHux8HYSo38gLj1fy4F2wu+lSa0e6KqHRdApzh8BM7r3JEOxvgZLw' +
675+ 'RgqHrsjW2MxTOuLhPpM0vCK8WrGjuKL+6Hy1WaTaLulgEMhZ2ZXGzD' +
676+ 'cTwyekTbETzAzLQ1xgEE/11+gKFac1DW7lGY6EM+Jtg8kyCOe0/ZR0' +
677+ '8ee7u5Iuhi5VmhYbeeFYOsq1+S/hjxYuQnqmt/4DPA+7j0pdB5krOL' +
678+ '8Uj67Y+UEJny+7kaz8cset3mFtbkfy1o3ngEdC4tVCROwp9C7uFSKT' +
679+ 'BrFBpLZAiF111Ad3Z54I4fk4oQFQ6yq3ScNvINaufiIxKuxOOP7nTj' +
680+ '1jF/lSPmD/25enJLENBel5fiPrMmktlE36vdanTDOB+xqvlfyUUva7' +
681+ 'U3VLKvpdQAYFoADxUH8huUzqhPDVrcnfuHutNeHykSEEKQ6L7JNYT+' +
682+ 'DwRynw8a7ptsOUeKe4r9Tm+XYENIciOr/va4EUlNplO50IQCdmNEmw' +
683+ 'qJnrwdc7af23YfzTrCq/dGEhNpaFWHciEIsUroQsygqkoFi4a3Bdx7' +
684+ 'CV775sy2FQM60/QZqnGJkf7jKHT3PKbID8XbAs4YQoOY17r88Mt9xP' +
685+ '5FWD+3nkxbiDlwaDLHFKm1pQDu5agpqX3q7SYgbfqCZZgQISmwRU2F' +
686+ '9kUrNehNs95blQYyRsLYXa4FUl3LvGrCRKSZ/lCy1jt96pL4c+42yI' +
687+ 'C/soH7cqBXUhoBFujJZ+rdeobtCtIG37BdifIRxM3Y9bvu0Lhj1L37' +
688+ 'lL6qKM0yW9oqmSynvktVckjGlVCEZDyE5ik0i973GEa9AGJSkqCZ4a' +
689+ 'y1zwH9peXakCIiTxL+i9T7HAB+a2h+lPeJQCXt8OTu397Ce/JseTwO' +
690+ 'Id30Sa1TspVpg6EWl6izSvu3fZ+HXVKs09HvcKwkJ5E2GNXt2lvjYn' +
691+ 'vCMw32OQzj1m585B7H/aFBRh9VyXRFW52whbI+DK8dSsiXaxUUZN5B' +
692+ 'H0KfRBqGZ1h9OuC0AH923ZTjPaHHhsxX/+1ZLVt/K7NOMSn4X6ZJXM' +
693+ 'NB0fAzC8d1xsTCPGUEck70KiV5SrhTcDWHqPecXRWWG2xz3F14c7QY' +
694+ 'UzH+oGnPsV+oGGwJWKM77X0mBYFDsKPFFMk0BtJQOOFDWFHYuILQrV' +
695+ 'Dsrq/n0oK+Z+V4ugTKdqllDSIzi0oe3kSVxd1SdQ8pWOnBbJtdqeFR' +
696+ 'PpV5dVCPjKo03kWR5nAaWRmpEco3ousI2RfOy2H22tzzGJjOdMlFr8' +
697+ 'Z+d+9uJ8Dj1hLqvx7E58KExsFTiz5rNzM9MzQZwAihCsfj6ngjfiBO' +
698+ 'DMPaUTTxQwG0JsnoS88BUSCaR/ALHRjinywWgchBWrkS0cu8/OVrkf' +
699+ 'grmrVNxnXgbPFJmP/4Sc82pxGZM5PYCyTRCXPeCDdetDYCCfVWaEoJ' +
700+ 'xmJTwWHp7cyvTwQNBO+61i3REx7RSNsDGB6TATBgkqhkiG9w0BCRUx' +
701+ 'BgQEAQAAADBXBgkqhkiG9w0BCRQxSh5IADEAYQA3ADAAYgA4AGYAYw' +
702+ 'AtAGYAZQBjAGUALQA0ADkAZgA0AC0AOAA1AGUAYQAtAGUAYQA3ADYA' +
703+ 'ZQA1ADYANAA0AGMANQA0MHkGCSsGAQQBgjcRATFsHmoATQBpAGMAcg' +
704+ 'BvAHMAbwBmAHQAIABFAG4AaABhAG4AYwBlAGQAIABSAFMAQQAgAGEA' +
705+ 'bgBkACAAQQBFAFMAIABDAHIAeQBwAHQAbwBnAHIAYQBwAGgAaQBjAC' +
706+ 'AAUAByAG8AdgBpAGQAZQByMIID5wYJKoZIhvcNAQcGoIID2DCCA9QC' +
707+ 'AQAwggPNBgkqhkiG9w0BBwEwHAYKKoZIhvcNAQwBAzAOBAjofJ+s8+' +
708+ '6CAgICB9CAggOgKKY/y0WZTbuOXeABYVpmuY5f1Ec3fD6fcNF1mOQm' +
709+ 'wCcl9GZdx4VKGnsz9HOz17WF0KtLB+2c7q+9qc7Ndvp2L4mFkXyp7o' +
710+ 'kKu72uPMDdEyeku2LEnopmYrFZmnoh/3KGLhr4FSQYJ9blY3Fk7Jxb' +
711+ 'JhiElHWZO8XMky41PdCCwawQKWmFlCxNPqrsGr7qrKU3uTO3A7gpgY' +
712+ 't1JlixfZeVeP/Z4ETvodvq4Cl3kcSQO+RSz0nDvqL6Z4F7PU2PSPbx' +
713+ 'olnfqpqO6UnwXnLNyhJqX3D+FrPXjI+Nv8MshtdUoHFe5MciPEDDIQ' +
714+ 'oo+3BYMgrYm+myv0/o9IUimLw8MH88U7lUm3KGVX+1hsdwMtzjeEtS' +
715+ 'bW+meL03dSfJRu2J+oe/pLRUuP4WSCIiWW4fi6L24knG0jaGAh4njM' +
716+ '16naME9243gdcBs8QgBpwIo9zUGS21gfbsluS3rVEOaK9zQMQGupM6' +
717+ 'VEeP3HSooz1jb2PYFcWqG6n+78KiMc+gMxBHLdXOKb7AbozOVPrR/g' +
718+ 'JjyW8lMqDm9Drf+bdweDIJGQuZJKKbeLSszI/iaxetwO3DFI9L32iG' +
719+ 'nHIFclIXZJ1VHG72ty4+ScA0YLYi92ONVqEmffIzoXcyR7521iFNKp' +
720+ '+ks6nagu+F0dl/KW0J22dKLmuNQhEteouoSXSHckyTdDIPqjt8a9vr' +
721+ 'zWMqSlqlnVbKDkjvMzGqllsNG3asMQxHVbo1mdN1JkhYCzUF/tMekR' +
722+ 'LAjEsEKHnqXQX8imQaq+i0YNfqPQ4Y7q8VlyOdIJgFGb3Gw0vhlr98' +
723+ 'mwvfc1BpBThJ/Xs7w+Nx2PL6SW9Me3GyxxJ1eeSxnf5Lcpjzxe0sOs' +
724+ '4Z78F0Ox7xtmDhoWtD06TNj8YU65Vdz5PGkUkKndEBTBnEcSO0CCGX' +
725+ 'S+wI/ILuANXjwQ5frBi4bFmIv+rwzOgpd3Vp1hIvQt1TydtvIssTyS' +
726+ 'BofHtOL09hy3yZkndA1u6O23lyrLrADF1cgsBZ03xL+mMpeIYCDRFO' +
727+ 'RrgUK/D7fIi19lmr17BzZL199edFfzAk93gI4uEUpp4dTbyqspi2rE' +
728+ 'CtNYWWp4/g7xuTUlNkD8P/6IgkBDS4D162WWYdF9LXAFNRKrcc2Uzg' +
729+ 'bTYso2OA6K25imD9yOM+uWC+G4WcW/S2xSxgHiRGz0sUuM4V+Qjela' +
730+ 'I9J15ZRCTGNCz1qvN1TIaragHlv2+lQ91WDRd/QnIZAHcxj0j5wmh1' +
731+ 'JFVLNkKRvDA7MB8wBwYFKw4DAhoEFMRoBxm71oVVRpPf9w7EBxc/rX' +
732+ 'kDBBQv5N2Yn6i7hF+N3gzU7DWLCic+RAICB9A=' ;
733+ const p12Der = forge . util . decode64 ( b64Pfx ) ;
734+ const p12Asn1 = forge . asn1 . fromDer ( p12Der ) ;
735+ const p12 = forge . pkcs12 . pkcs12FromAsn1 ( p12Asn1 ) ;
736+ ASSERT . ok ( p12 , 'pkcs12FromAsn1 should return an object' ) ;
737+ ASSERT . ok ( Array . isArray ( p12 . safeContents ) , 'safeContents should exist' ) ;
738+ } ) ;
666739} ) ( ) ;
0 commit comments