eid-viewer
eid-viewer library
Loading...
Searching...
No Matches
oslayer-objc.h
Go to the documentation of this file.
1#include <BeidView/oslayer.h>
2
11@import Foundation;
12@import AppKit;
13
14typedef NS_ENUM(NSInteger, eIDSource)
15{
16 eIDSourceNone = EID_VWR_SRC_NONE,
17 eIDSourceFile = EID_VWR_SRC_FILE,
18 eIDSourceCard = EID_VWR_SRC_CARD,
19 eIDSourceUnknown = EID_VWR_SRC_UNKNOWN,
20};
21
22typedef NS_ENUM(NSInteger, eIDLogLevel)
23{
24 eIDLogLevelDetail = EID_VWR_LOG_DETAIL,
25 eIDLogLevelNormal = EID_VWR_LOG_NORMAL,
26 eIDLogLevelCoarse = EID_VWR_LOG_COARSE,
27 eIDLogLevelError = EID_VWR_LOG_ERROR,
28};
29
30typedef NS_ENUM(NSInteger, eIDPinOp)
31{
32 eIDPinOpTest = EID_VWR_PINOP_TEST, eIDPinOpChange = EID_VWR_PINOP_CHG,
33};
34
35typedef NS_ENUM(NSInteger, eIDState)
36{
37 eIDStateLibOpen = STATE_LIBOPEN,
38 eIDStateCallbacks = STATE_CALLBACKS,
39 eIDStateReady = STATE_READY,
40 eIDStateToken = STATE_TOKEN,
41 eIDStateTokenWait = STATE_TOKEN_WAIT,
42 eIDStateTokenID = STATE_TOKEN_ID,
43 eIDStateTokenCerts = STATE_TOKEN_CERTS,
44 eIDStateTokenIdle = STATE_TOKEN_IDLE,
45 eIDStateTokenPinop = STATE_TOKEN_PINOP,
46 eIDStateTokenSerialize = STATE_TOKEN_SERIALIZE,
47 eIDStateTokenError = STATE_TOKEN_ERROR,
48 eIDStateFile = STATE_FILE,
49 eIDStateFileReading = STATE_FILE_READING,
50 eIDStateFileWait = STATE_FILE_WAIT,
51 eIDStateCardInvalid = STATE_CARD_INVALID,
52 eIDStateNoToken = STATE_NO_TOKEN,
53 eIDStateNoReader = STATE_NO_READER,
54};
55
56typedef NS_ENUM(NSInteger, eIDLanguage)
57{
58 eIDLanguageNone = EID_VWR_LANG_NONE,
59 eIDLanguageDe = EID_VWR_LANG_DE,
60 eIDLanguageEn = EID_VWR_LANG_EN,
61 eIDLanguageFr = EID_VWR_LANG_FR,
62 eIDLanguageNl = EID_VWR_LANG_NL,
63};
64
65typedef NS_ENUM(NSInteger, eIDResult)
66{
67 eIDResultFailed = EID_VWR_RES_FAILED,
68 eIDResultSuccess = EID_VWR_RES_SUCCESS,
69 eIDResultUnknown = EID_VWR_RES_UNKNOWN,
70 eIDResultWarning = EID_VWR_RES_WARNING,
71};
72@interface eIDVersionTriplet: NSObject
73@property NSInteger major;
74@property NSInteger minor;
75@property NSInteger build;
76@end
77@interface eIDUpgradeInfo: NSObject
78@property BOOL haveUpgrade;
79@property NSURL *upgradeUrl;
80@property NSURL *relnotesUrl;
81@property eIDVersionTriplet *newVersion;
82@end
86@protocol eIDOSLayerUI <NSObject>
87@optional
88-(void) newsrc:(eIDSource) which;
89-(void) newstringdata: (NSString *) data withLabel:(NSString *)label;
90-(void) newbindata:(NSData *) data withLabel:(NSString *) label;
91-(void) log:(NSString *) line withLevel:(eIDLogLevel) level;
92-(void) newstate:(eIDState) state;
93-(void) pinop_result:(eIDResult) result forOperation:(eIDPinOp) operation;
94-(void) readersFound:(NSArray *) readers withSlotNumbers:(NSArray *) slots;
95-(void) challengeResult:(eIDResult)result withResponse:(NSData*)response;
96-(BOOL) useDefaultChallengeResult;
97@end
98
101@interface eIDOSLayerBackend: NSObject
102+(void) pinop:(eIDPinOp) which;
103+(NSInteger) setUi:(id < eIDOSLayerUI >) ui;
104+(NSImage *) getPreview:(NSURL *) from;
105+(void) setLang:(eIDLanguage) language;
106+(eIDLanguage) lang;
107+(void) poll;
108+(void) mainloop;
109+(void) deserialize:(NSURL *) from;
110+(void) serialize:(NSURL *) to;
111+(NSData *) xmlform;
112+(void) closeFile;
113+(void) setInvalid;
114+(eIDResult) validateCert:(NSData *) certificate withCa:(NSData *) ca;
115+(eIDResult) validateCert:(NSData *) certificate withCa:(NSData *) ca andAllowList:(BOOL)allowlist;
116+(eIDResult) validateRrnCert:(NSData *) certificate withRoot:(NSData *) root;
117+(eIDResult) validateRootCert:(NSData *) certificate;
118+(eIDResult) validateIntCert:(NSData *) certificate withCa:(NSData *)ca;
119+(void) selectReader:(NSInteger) readerNumber;
120+(void) setReaderAuto:(BOOL) automatic;
121+(NSString *) getCertDetail:(NSData *) certificate;
122+(void)doChallengeInternal;
123+(void)doChallenge:(NSData*)challenge;
124+(eIDUpgradeInfo*) parseUpgradeInfoForXml:(NSString*)xml currentVersion:(eIDVersionTriplet *)ourVersion;
125@end
126
@ STATE_FILE_READING
We're reading from the file currently.
Definition oslayer.h:87
@ STATE_TOKEN_IDLE
not performing any action in the taoken_wait state
Definition oslayer.h:92
@ STATE_TOKEN_PINOP
Performing a PIN operation.
Definition oslayer.h:83
@ STATE_READY
Ready to receive a token (eID card)
Definition oslayer.h:78
@ STATE_TOKEN_ID
Reading identity data.
Definition oslayer.h:81
@ STATE_LIBOPEN
The library has been opened. Used as an initializer.
Definition oslayer.h:76
@ STATE_FILE
We're dealing with files.
Definition oslayer.h:86
@ STATE_TOKEN_ERROR
An error occurred while dealing with the card.
Definition oslayer.h:85
@ STATE_CALLBACKS
The callbacks have been defined.
Definition oslayer.h:77
@ STATE_TOKEN_SERIALIZE
Saving data to a file.
Definition oslayer.h:84
@ STATE_NO_TOKEN
We don't have a card, and we also don't have a file.
Definition oslayer.h:90
@ STATE_TOKEN_CERTS
Reading certificates.
Definition oslayer.h:82
@ STATE_TOKEN_WAIT
The card has been read, we're now waiting for events to do something else.
Definition oslayer.h:80
@ STATE_TOKEN
A token (eID card) has been found.
Definition oslayer.h:79
@ STATE_FILE_WAIT
We finished parsing the file.
Definition oslayer.h:88
@ STATE_NO_READER
We don't have a reader (yet?)
Definition oslayer.h:91
@ STATE_CARD_INVALID
The data was determined to be invalid. That is, the card could be read, but signature validation fail...
Definition oslayer.h:89
@ EID_VWR_RES_SUCCESS
the operation returned successfully
Definition oslayer.h:65
@ EID_VWR_RES_WARNING
the operation finished with warnings
Definition oslayer.h:67
@ EID_VWR_RES_FAILED
operation failed
Definition oslayer.h:64
@ EID_VWR_RES_UNKNOWN
the operation did not finish
Definition oslayer.h:66
@ EID_VWR_SRC_FILE
File source. "Print", "Validate" and "Close" operations should be allowed, PIN-related operations are...
Definition oslayer.h:33
@ EID_VWR_SRC_CARD
Card source. Close should not be allowed, everything else should be.
Definition oslayer.h:34
@ EID_VWR_SRC_NONE
No source. UI should be cleared.
Definition oslayer.h:32
@ EID_VWR_SRC_UNKNOWN
Unknown. Used as initializer.
Definition oslayer.h:35
@ EID_VWR_LOG_ERROR
Definition oslayer.h:51
@ EID_VWR_LOG_NORMAL
Definition oslayer.h:47
@ EID_VWR_LOG_DETAIL
Definition oslayer.h:45
@ EID_VWR_LOG_COARSE
Definition oslayer.h:49
@ EID_VWR_PINOP_CHG
change the PIN code of the card
Definition oslayer.h:58
@ EID_VWR_PINOP_TEST
perform a login and return whether the login was successful
Definition oslayer.h:57
@ EID_VWR_LANG_EN
English.
Definition oslayer.h:103
@ EID_VWR_LANG_DE
German.
Definition oslayer.h:102
@ EID_VWR_LANG_NONE
No language has yet been selected. Used as initializer.
Definition oslayer.h:101
@ EID_VWR_LANG_FR
French.
Definition oslayer.h:104
@ EID_VWR_LANG_NL
Dutch.
Definition oslayer.h:105
Definition oslayer-objc.h:102
Definition oslayer-objc.h:78
Definition oslayer-objc.h:73