| | | |
Offset 9, 21 lines modified | Offset 9, 21 lines modified |
| |
9 | EMI·Component·Version: | 9 | EMI·Component·Version: |
| |
10 | 2.x | 10 | 2.x |
| |
11 | Date: | 11 | Date: |
| |
12 | January·19,·2024 | 12 | February·20,·2025 |
| |
13 | 1/14 | 13 | 1/14 |
| |
14 | \xcT·ITLE: | 14 | \xcT·ITLE: |
15 | Common·Authentication·Library·–·Developer’s·Guide | 15 | Common·Authentication·Library·–·Developer’s·Guide |
16 | Date:·January·19,·2024 | 16 | Date:·February·20,·2025 |
| |
17 | This·work·is·co-funded·by·the·European·Commission·as·part·of·the·EMI·project·under·Grant·Agreement | 17 | This·work·is·co-funded·by·the·European·Commission·as·part·of·the·EMI·project·under·Grant·Agreement |
18 | INFSO-RI-261611. | 18 | INFSO-RI-261611. |
| |
19 | Copyright·©·EMI.·2010-2013. | 19 | Copyright·©·EMI.·2010-2013. |
20 | Licensed·under·the·Apache·License,·Version·2.0·(the·"License");·you·may·not·use·this·file·except | 20 | Licensed·under·the·Apache·License,·Version·2.0·(the·"License");·you·may·not·use·this·file·except |
21 | in·compliance·with·the·License.·You·may·obtain·a·copy·of·the·License·at | 21 | in·compliance·with·the·License.·You·may·obtain·a·copy·of·the·License·at |
Offset 32, 15 lines modified | Offset 32, 15 lines modified |
32 | is·distributed·on·an·"AS·IS"·BASIS,·WITHOUT·WARRANTIES·OR·CONDITIONS·OF·ANY·KIND,·either·express·or·implied.·See·the·License·for·the·specific·language·governing·permissions·and | 32 | is·distributed·on·an·"AS·IS"·BASIS,·WITHOUT·WARRANTIES·OR·CONDITIONS·OF·ANY·KIND,·either·express·or·implied.·See·the·License·for·the·specific·language·governing·permissions·and |
33 | limitations·under·the·License. | 33 | limitations·under·the·License. |
| |
34 | 2/14 | 34 | 2/14 |
| |
35 | \xcT·ITLE: | 35 | \xcT·ITLE: |
36 | Common·Authentication·Library·–·Developer’s·Guide | 36 | Common·Authentication·Library·–·Developer’s·Guide |
37 | Date:·January·19,·2024 | 37 | Date:·February·20,·2025 |
| |
38 | C·ONTENTS | 38 | C·ONTENTS |
39 | 1·INTRODUCTION | 39 | 1·INTRODUCTION |
| |
40 | 4 | 40 | 4 |
| |
41 | 1.1·LANGUAGE·BINDINGS·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·. | 41 | 1.1·LANGUAGE·BINDINGS·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·. |
Offset 107, 15 lines modified | Offset 107, 15 lines modified |
| |
107 | 14 | 107 | 14 |
| |
108 | 3/14 | 108 | 3/14 |
| |
109 | \xcT·ITLE: | 109 | \xcT·ITLE: |
110 | Common·Authentication·Library·–·Developer’s·Guide | 110 | Common·Authentication·Library·–·Developer’s·Guide |
111 | Date:·January·19,·2024 | 111 | Date:·February·20,·2025 |
| |
112 | 1 | 112 | 1 |
| |
113 | I·NTRODUCTION | 113 | I·NTRODUCTION |
| |
114 | This·document·serves·as·a·developer’s·guide·and·could·be·seen·as·an·API·reference·too,·even·though | 114 | This·document·serves·as·a·developer’s·guide·and·could·be·seen·as·an·API·reference·too,·even·though |
115 | comments·in·the·header·files·may·give·the·reader·better·insights·into·that·matter. | 115 | comments·in·the·header·files·may·give·the·reader·better·insights·into·that·matter. |
Offset 173, 15 lines modified | Offset 173, 15 lines modified |
173 | codes·from·errno.h·are·used·as·much·as·possible. | 173 | codes·from·errno.h·are·used·as·much·as·possible. |
174 | Few·API·functions·return·char·*.·In·such·a·case·NULL·indicates·an·error,·non-null·value·means·success. | 174 | Few·API·functions·return·char·*.·In·such·a·case·NULL·indicates·an·error,·non-null·value·means·success. |
| |
175 | 4/14 | 175 | 4/14 |
| |
176 | \xcT·ITLE: | 176 | \xcT·ITLE: |
177 | Common·Authentication·Library·–·Developer’s·Guide | 177 | Common·Authentication·Library·–·Developer’s·Guide |
178 | Date:·January·19,·2024 | 178 | Date:·February·20,·2025 |
| |
179 | 1.4 | 179 | 1.4 |
| |
180 | C·ONTEXT·AND·PARAMETER·S·ETTINGS | 180 | C·ONTEXT·AND·PARAMETER·S·ETTINGS |
| |
181 | All·the·API·functions·use·a·context·parameter·of·type·canl_ctx·to·maintain·state·information·like·error | 181 | All·the·API·functions·use·a·context·parameter·of·type·canl_ctx·to·maintain·state·information·like·error |
182 | message·and·code.·Some·API·functions·also·use·an·io·context·of·type·canl_io_handler·which·keeps | 182 | message·and·code.·Some·API·functions·also·use·an·io·context·of·type·canl_io_handler·which·keeps |
Offset 237, 15 lines modified | Offset 237, 15 lines modified |
237 | There·is·one·opaque·data·structure·representing·caNl·Certificate·API·context:·canl_cred.·It·must·only | 237 | There·is·one·opaque·data·structure·representing·caNl·Certificate·API·context:·canl_cred.·It·must·only |
238 | be·initialized·before·function·calls·that·use·this·context·as·a·parameter. | 238 | be·initialized·before·function·calls·that·use·this·context·as·a·parameter. |
| |
239 | 5/14 | 239 | 5/14 |
| |
240 | \xcT·ITLE: | 240 | \xcT·ITLE: |
241 | Common·Authentication·Library·–·Developer’s·Guide | 241 | Common·Authentication·Library·–·Developer’s·Guide |
242 | Date:·January·19,·2024 | 242 | Date:·February·20,·2025 |
| |
243 | #·include·<·c·a·n·l·.·h> | 243 | #·include·<·c·a·n·l·.·h> |
244 | #·include·<·c·a·n·l·_·c·r·e·d·.·h> | 244 | #·include·<·c·a·n·l·_·c·r·e·d·.·h> |
245 | canl_ctx·ctx·; | 245 | canl_ctx·ctx·; |
246 | c·a·n·l·_·c·r·e·d·c_cred·; | 246 | c·a·n·l·_·c·r·e·d·c_cred·; |
247 | ctx·=·canl_create_ctx·(·)·; | 247 | ctx·=·canl_create_ctx·(·)·; |
248 | canl_cred_new·(·c·t·x·,·&c_cred·)·; | 248 | canl_cred_new·(·c·t·x·,·&c_cred·)·; |
Offset 268, 15 lines modified | Offset 268, 15 lines modified |
268 | as·for·the·Certificate·API: | 268 | as·for·the·Certificate·API: |
269 | c·a·n·l·_·c·r·e·d·_·f·r·e·e·(·c·t·x·,·c_cred·)·; | 269 | c·a·n·l·_·c·r·e·d·_·f·r·e·e·(·c·t·x·,·c_cred·)·; |
| |
270 | 6/14 | 270 | 6/14 |
| |
271 | \xcT·ITLE: | 271 | \xcT·ITLE: |
272 | Common·Authentication·Library·–·Developer’s·Guide | 272 | Common·Authentication·Library·–·Developer’s·Guide |
273 | Date:·January·19,·2024 | 273 | Date:·February·20,·2025 |
| |
274 | 3 | 274 | 3 |
| |
275 | C·LIENT-S·ERVER·AUTHENTICATED·C·ONNECTION | 275 | C·LIENT-S·ERVER·AUTHENTICATED·C·ONNECTION |
| |
276 | For·client-server·authenticated·connection·we·just·use·caNl·Main·API·calls.·In·time·of·writing·this·paper | 276 | For·client-server·authenticated·connection·we·just·use·caNl·Main·API·calls.·In·time·of·writing·this·paper |
277 | caNl·use·openssl·–·SSL/TLS·and·cryptography·toolkit.·However,·core·of·the·caNl·has·been·developed·to | 277 | caNl·use·openssl·–·SSL/TLS·and·cryptography·toolkit.·However,·core·of·the·caNl·has·been·developed·to |
Offset 322, 15 lines modified | Offset 322, 15 lines modified |
322 | –·param·service·–·the·service·on·the·server·-·usually·NULL | 322 | –·param·service·–·the·service·on·the·server·-·usually·NULL |
323 | –·param·port·–·the·port·on·which·the·server·is·listening | 323 | –·param·port·–·the·port·on·which·the·server·is·listening |
| |
324 | 7/14 | 324 | 7/14 |
| |
325 | \xcT·ITLE: | 325 | \xcT·ITLE: |
326 | Common·Authentication·Library·–·Developer’s·Guide | 326 | Common·Authentication·Library·–·Developer’s·Guide |
327 | Date:·January·19,·2024 | 327 | Date:·February·20,·2025 |
| |
328 | –·param·auth_mechs·–·authentication·mechanism·to·use | 328 | –·param·auth_mechs·–·authentication·mechanism·to·use |
329 | –·param·flags·–·for·future·usage | 329 | –·param·flags·–·for·future·usage |
330 | –·param·peer·–·if·not·NULL·the·canl_principal·will·be·filled·with·peer’s·principal·info.·Approppriate | 330 | –·param·peer·–·if·not·NULL·the·canl_principal·will·be·filled·with·peer’s·principal·info.·Approppriate |
331 | free·funcion·should·be·called·if·canl_princ·is·no·longer·to·be·used | 331 | free·funcion·should·be·called·if·canl_princ·is·no·longer·to·be·used |
332 | –·param·timeout·–·the·timeout·after·which·to·drop·the·connect·attempt | 332 | –·param·timeout·–·the·timeout·after·which·to·drop·the·connect·attempt |
333 | –·return·–·canl·error·code | 333 | –·return·–·canl·error·code |
Offset 366, 15 lines modified | Offset 366, 15 lines modified |
366 | –·param·cp·–·canl·peer’s·principal·structure | 366 | –·param·cp·–·canl·peer’s·principal·structure |
367 | –·return·–·void | 367 | –·return·–·void |
| |
368 | 8/14 | 368 | 8/14 |
| |
369 | \xcT·ITLE: | 369 | \xcT·ITLE: |
370 | Common·Authentication·Library·–·Developer’s·Guide | 370 | Common·Authentication·Library·–·Developer’s·Guide |
371 | Date:·January·19,·2024 | 371 | Date:·February·20,·2025 |
| |
Max diff block lines reached; 2744/6473 bytes (42.39%) of diff not shown.
|