mirror of
https://github.com/gnustep/libs-base.git
synced 2025-04-23 17:10:48 +00:00
51 lines
1.6 KiB
Objective-C
51 lines
1.6 KiB
Objective-C
#import "ObjectTesting.h"
|
|
#import "../../../Headers/GNUstepBase/config.h"
|
|
#import "../../../Headers/Foundation/Foundation.h"
|
|
#import "../../../Headers/GNUstepBase/GSTLS.h"
|
|
|
|
int
|
|
main() {
|
|
NSAutoreleasePool *arp = [NSAutoreleasePool new];
|
|
START_SET("TLS support")
|
|
#if GS_USE_GNUTLS
|
|
#ifndef HAVE_GNUTLS_X509_PRIVKEY_IMPORT2
|
|
testHopeful = YES;
|
|
#endif
|
|
GSTLSPrivateKey *k;
|
|
GSTLSCertificateList *c;
|
|
GSTLSCredentials *cred;
|
|
NSDateFormatter *dateFormatter;
|
|
NSDate *expiresAt;
|
|
|
|
k = [GSTLSPrivateKey keyFromFile: @"test.key" withPassword: @"asdf"];
|
|
PASS(k != nil, "OpenSSL encrypted key can be loaded");
|
|
|
|
c = [GSTLSCertificateList listFromFile: @"test.crt"];
|
|
PASS(c != nil, "Certificate list can be loaded from a file");
|
|
|
|
PASS([c expiresAt: -1] == nil, "Return nil for invalid index");
|
|
PASS([c expiresAt: 2] == nil, "Return nil for invalid index");
|
|
expiresAt = [c expiresAt: 0];
|
|
dateFormatter = [[NSDateFormatter alloc] init];
|
|
[dateFormatter setDateFormat: @"yyyy-MM-dd HH:mm:ss zzz"];
|
|
/* Test guaranteed to fail on 32-bit architectures. */
|
|
#if __LP64__
|
|
PASS_EQUAL(expiresAt,
|
|
[dateFormatter dateFromString: @"2118-12-14 15:35:11 +0000"],
|
|
"Expiration date can be retrieved");
|
|
#endif
|
|
[dateFormatter release];
|
|
PASS_EQUAL([c expiresAt], expiresAt,
|
|
"Expiration for entire list is that of the single item");
|
|
|
|
cred = [GSTLSCredentials selfSigned: YES];
|
|
NSLog(@"%@", cred);
|
|
PASS(cred != nil, "generates self signed certificate");
|
|
#else
|
|
SKIP("TLS support disabled");
|
|
#endif
|
|
|
|
END_SET("TLS support");
|
|
DESTROY(arp);
|
|
return 0;
|
|
}
|