@@ -22,11 +22,22 @@ public class ApnsConfiguration
2222
2323 #endregion
2424
25+ public ApnsConfiguration ( ApnsServerEnvironment serverEnvironment , string certificateFile , string certificateFilePwd , bool validateIsApnsCertificate )
26+ : this ( serverEnvironment , System . IO . File . ReadAllBytes ( certificateFile ) , certificateFilePwd , validateIsApnsCertificate )
27+ {
28+ }
29+
2530 public ApnsConfiguration ( ApnsServerEnvironment serverEnvironment , string certificateFile , string certificateFilePwd )
2631 : this ( serverEnvironment , System . IO . File . ReadAllBytes ( certificateFile ) , certificateFilePwd )
2732 {
2833 }
2934
35+ public ApnsConfiguration ( ApnsServerEnvironment serverEnvironment , byte [ ] certificateData , string certificateFilePwd , bool validateIsApnsCertificate )
36+ : this ( serverEnvironment , new X509Certificate2 ( certificateData , certificateFilePwd ,
37+ X509KeyStorageFlags . MachineKeySet | X509KeyStorageFlags . PersistKeySet | X509KeyStorageFlags . Exportable ) , validateIsApnsCertificate )
38+ {
39+ }
40+
3041 public ApnsConfiguration ( ApnsServerEnvironment serverEnvironment , byte [ ] certificateData , string certificateFilePwd )
3142 : this ( serverEnvironment , new X509Certificate2 ( certificateData , certificateFilePwd ,
3243 X509KeyStorageFlags . MachineKeySet | X509KeyStorageFlags . PersistKeySet | X509KeyStorageFlags . Exportable ) )
@@ -44,10 +55,15 @@ public ApnsConfiguration (string overrideHost, int overridePort, bool skipSsl =
4455
4556 public ApnsConfiguration ( ApnsServerEnvironment serverEnvironment , X509Certificate2 certificate )
4657 {
47- Initialize ( serverEnvironment , certificate ) ;
58+ Initialize ( serverEnvironment , certificate , true ) ;
59+ }
60+
61+ public ApnsConfiguration ( ApnsServerEnvironment serverEnvironment , X509Certificate2 certificate , bool validateIsApnsCertificate )
62+ {
63+ Initialize ( serverEnvironment , certificate , validateIsApnsCertificate ) ;
4864 }
4965
50- void Initialize ( ApnsServerEnvironment serverEnvironment , X509Certificate2 certificate )
66+ void Initialize ( ApnsServerEnvironment serverEnvironment , X509Certificate2 certificate , bool validateIsApnsCertificate )
5167 {
5268 ServerEnvironment = serverEnvironment ;
5369
@@ -70,7 +86,8 @@ void Initialize (ApnsServerEnvironment serverEnvironment, X509Certificate2 certi
7086 AdditionalCertificates = new List < X509Certificate2 > ( ) ;
7187 AddLocalAndMachineCertificateStores = false ;
7288
73- CheckIsApnsCertificate ( ) ;
89+ if ( validateIsApnsCertificate )
90+ CheckIsApnsCertificate ( ) ;
7491
7592 ValidateServerCertificate = false ;
7693
0 commit comments