1 /*---------------------------------------------------------------------------*
2   Project:  Horizon
3   File:     friends_Result.h
4 
5   Copyright (C)2009-2012 Nintendo Co., Ltd.  All rights reserved.
6 
7   These coded instructions, statements, and computer programs contain
8   proprietary information of Nintendo of America Inc. and/or Nintendo
9   Company Ltd., and are protected by Federal copyright law.  They may
10   not be disclosed to third parties or copied or duplicated in any form,
11   in whole or in part, without the prior written consent of Nintendo.
12 
13   $Rev: 46347 $
14  *---------------------------------------------------------------------------*/
15 
16 #ifndef NN_FRIENDS_CTR_FRIENDS_RESULT_H_
17 #define NN_FRIENDS_CTR_FRIENDS_RESULT_H_
18 
19 #ifdef __cplusplus
20 
21 #include <nn/Result.h>
22 
23 namespace nn {
24 namespace friends {
25 namespace CTR {
26 
27     namespace detail {
28         static const u32 DESCRIPTION_FACILITY_SHIFT = 5;
29         static const u32 DESCRIPTION_RETURN_CODE_UNDEFINED = (1 << (DESCRIPTION_FACILITY_SHIFT + 1)) - 1;
30     }
31 
32     enum Description
33     {
34         DESCRIPTION_FACILITY_CORE           = 1 << detail::DESCRIPTION_FACILITY_SHIFT,
35         DESCRIPTION_FACILITY_DDL            = 2 << detail::DESCRIPTION_FACILITY_SHIFT,
36         DESCRIPTION_FACILITY_RENDEZVOUS     = 3 << detail::DESCRIPTION_FACILITY_SHIFT,
37         DESCRIPTION_FACILITY_PYTHONCORE     = 4 << detail::DESCRIPTION_FACILITY_SHIFT,
38         DESCRIPTION_FACILITY_TRANSPORT      = 5 << detail::DESCRIPTION_FACILITY_SHIFT,
39         DESCRIPTION_FACILITY_DOCORE         = 6 << detail::DESCRIPTION_FACILITY_SHIFT,
40         DESCRIPTION_FACILITY_FPD            = 7 << detail::DESCRIPTION_FACILITY_SHIFT,
41         DESCRIPTION_FACILITY_AUTHENTICATION = 8 << detail::DESCRIPTION_FACILITY_SHIFT,
42 
43         DESCRIPTION_CORE_SUCCESS                                     = DESCRIPTION_FACILITY_CORE + 0,
44         DESCRIPTION_CORE_SUCCESS_PENDING                             = DESCRIPTION_FACILITY_CORE + 1,
45         DESCRIPTION_CORE_UNKNOWN                                     = DESCRIPTION_FACILITY_CORE + 2,
46         DESCRIPTION_CORE_NOT_IMPLEMENTED                             = DESCRIPTION_FACILITY_CORE + 3,
47         DESCRIPTION_CORE_INVALID_POINTER                             = DESCRIPTION_FACILITY_CORE + 4,
48         DESCRIPTION_CORE_OPERATION_ABORTED                           = DESCRIPTION_FACILITY_CORE + 5,
49         DESCRIPTION_CORE_EXCEPTION                                   = DESCRIPTION_FACILITY_CORE + 6,
50         DESCRIPTION_CORE_ACCESS_DENIED                               = DESCRIPTION_FACILITY_CORE + 7,
51         DESCRIPTION_CORE_INVALID_HANDLE                              = DESCRIPTION_FACILITY_CORE + 8,
52         DESCRIPTION_CORE_INVALID_INDEX                               = DESCRIPTION_FACILITY_CORE + 9,
53         DESCRIPTION_CORE_OUT_OF_MEMORY                               = DESCRIPTION_FACILITY_CORE + 10,
54         DESCRIPTION_CORE_INVALID_ARGUMENT                            = DESCRIPTION_FACILITY_CORE + 11,
55         DESCRIPTION_CORE_TIMEOUT                                     = DESCRIPTION_FACILITY_CORE + 12,
56         DESCRIPTION_CORE_INITIALIZATION_FAILURE                      = DESCRIPTION_FACILITY_CORE + 13,
57         DESCRIPTION_CORE_CALL_INITIATION_FAILURE                     = DESCRIPTION_FACILITY_CORE + 14,
58         DESCRIPTION_CORE_REGISTRATION_ERROR                          = DESCRIPTION_FACILITY_CORE + 15,
59         DESCRIPTION_CORE_BUFFER_OVERFLOW                             = DESCRIPTION_FACILITY_CORE + 16,
60         DESCRIPTION_CORE_INVALID_LOCK_STATE                          = DESCRIPTION_FACILITY_CORE + 17,
61         DESCRIPTION_CORE_UNDEFINED                                   = DESCRIPTION_FACILITY_CORE + detail::DESCRIPTION_RETURN_CODE_UNDEFINED,
62 
63         DESCRIPTION_DDL_SUCCESS                                      = DESCRIPTION_FACILITY_DDL + 0,
64         DESCRIPTION_DDL_INVALID_SIGNATURE                            = DESCRIPTION_FACILITY_DDL + 1,
65         DESCRIPTION_DDL_INCORRECT_VERSION                            = DESCRIPTION_FACILITY_DDL + 2,
66         DESCRIPTION_DDL_UNDEFINED                                    = DESCRIPTION_FACILITY_DDL + detail::DESCRIPTION_RETURN_CODE_UNDEFINED,
67 
68         DESCRIPTION_RENDEZVOUS_SUCCESS                               = DESCRIPTION_FACILITY_RENDEZVOUS + 0,
69         DESCRIPTION_RENDEZVOUS_CONNECTION_FAILURE                    = DESCRIPTION_FACILITY_RENDEZVOUS + 1,
70         DESCRIPTION_RENDEZVOUS_NOT_AUTHENTICATED                     = DESCRIPTION_FACILITY_RENDEZVOUS + 2,
71         DESCRIPTION_RENDEZVOUS_INVALID_USERNAME                      = DESCRIPTION_FACILITY_RENDEZVOUS + 3,
72         DESCRIPTION_RENDEZVOUS_INVALID_PASSWORD                      = DESCRIPTION_FACILITY_RENDEZVOUS + 4,
73         DESCRIPTION_RENDEZVOUS_USERNAME_ALREADY_EXISTS               = DESCRIPTION_FACILITY_RENDEZVOUS + 5,
74         DESCRIPTION_RENDEZVOUS_ACCOUNT_DISABLED                      = DESCRIPTION_FACILITY_RENDEZVOUS + 6,
75         DESCRIPTION_RENDEZVOUS_ACCOUNT_EXPIRED                       = DESCRIPTION_FACILITY_RENDEZVOUS + 7,
76         DESCRIPTION_RENDEZVOUS_CONCURRENT_LOGIN_DENIED               = DESCRIPTION_FACILITY_RENDEZVOUS + 8,
77         DESCRIPTION_RENDEZVOUS_ENCRYPTION_FAILURE                    = DESCRIPTION_FACILITY_RENDEZVOUS + 9,
78         DESCRIPTION_RENDEZVOUS_INVALID_PID                           = DESCRIPTION_FACILITY_RENDEZVOUS + 10,
79         DESCRIPTION_RENDEZVOUS_MAX_CONNECTIONS_REACHED               = DESCRIPTION_FACILITY_RENDEZVOUS + 11,
80         DESCRIPTION_RENDEZVOUS_INVALID_GID                           = DESCRIPTION_FACILITY_RENDEZVOUS + 12,
81         DESCRIPTION_RENDEZVOUS_INVALID_THREAD_ID                     = DESCRIPTION_FACILITY_RENDEZVOUS + 13,
82         DESCRIPTION_RENDEZVOUS_INVALID_OPERATION_IN_LIVE_ENVIRONMENT = DESCRIPTION_FACILITY_RENDEZVOUS + 14,
83         DESCRIPTION_RENDEZVOUS_DUPLICATE_ENTRY                       = DESCRIPTION_FACILITY_RENDEZVOUS + 15,
84         DESCRIPTION_RENDEZVOUS_CONTROL_SCRIPT_FAILURE                = DESCRIPTION_FACILITY_RENDEZVOUS + 16,
85         DESCRIPTION_RENDEZVOUS_CLASS_NOT_FOUND                       = DESCRIPTION_FACILITY_RENDEZVOUS + 17,
86         DESCRIPTION_RENDEZVOUS_SESSION_VOID                          = DESCRIPTION_FACILITY_RENDEZVOUS + 18,
87         DESCRIPTION_RENDEZVOUS_LSP_GATEWAY_UNREACHABLE               = DESCRIPTION_FACILITY_RENDEZVOUS + 19,
88         DESCRIPTION_RENDEZVOUS_DDL_MISMATCH                          = DESCRIPTION_FACILITY_RENDEZVOUS + 20,
89         DESCRIPTION_RENDEZVOUS_INVALID_FTP_INFO                      = DESCRIPTION_FACILITY_RENDEZVOUS + 21,
90         DESCRIPTION_RENDEZVOUS_SESSION_FULL                          = DESCRIPTION_FACILITY_RENDEZVOUS + 22,
91         DESCRIPTION_RENDEZVOUS_UNDEFINED                             = DESCRIPTION_FACILITY_RENDEZVOUS + detail::DESCRIPTION_RETURN_CODE_UNDEFINED,
92 
93         DESCRIPTION_PYTHONCORE_SUCCESS                               = DESCRIPTION_FACILITY_PYTHONCORE + 0,
94         DESCRIPTION_PYTHONCORE_EXCEPTION                             = DESCRIPTION_FACILITY_PYTHONCORE + 1,
95         DESCRIPTION_PYTHONCORE_TYPE_ERROR                            = DESCRIPTION_FACILITY_PYTHONCORE + 2,
96         DESCRIPTION_PYTHONCORE_INDEX_ERROR                           = DESCRIPTION_FACILITY_PYTHONCORE + 3,
97         DESCRIPTION_PYTHONCORE_INVALID_REFERENCE                     = DESCRIPTION_FACILITY_PYTHONCORE + 4,
98         DESCRIPTION_PYTHONCORE_CALL_FAILURE                          = DESCRIPTION_FACILITY_PYTHONCORE + 5,
99         DESCRIPTION_PYTHONCORE_MEMORY_ERROR                          = DESCRIPTION_FACILITY_PYTHONCORE + 6,
100         DESCRIPTION_PYTHONCORE_KEY_ERROR                             = DESCRIPTION_FACILITY_PYTHONCORE + 7,
101         DESCRIPTION_PYTHONCORE_OPERATION_ERROR                       = DESCRIPTION_FACILITY_PYTHONCORE + 8,
102         DESCRIPTION_PYTHONCORE_CONVERSION_ERROR                      = DESCRIPTION_FACILITY_PYTHONCORE + 9,
103         DESCRIPTION_PYTHONCORE_VALIDATION_ERROR                      = DESCRIPTION_FACILITY_PYTHONCORE + 10,
104         DESCRIPTION_PYTHONCORE_UNDEFINED                             = DESCRIPTION_FACILITY_PYTHONCORE + detail::DESCRIPTION_RETURN_CODE_UNDEFINED,
105 
106         DESCRIPTION_TRANSPORT_SUCCESS                                = DESCRIPTION_FACILITY_TRANSPORT + 0,
107         DESCRIPTION_TRANSPORT_UNKNOWN                                = DESCRIPTION_FACILITY_TRANSPORT + 1,
108         DESCRIPTION_TRANSPORT_CONNECTION_FAILURE                     = DESCRIPTION_FACILITY_TRANSPORT + 2,
109         DESCRIPTION_TRANSPORT_INVALID_URL                            = DESCRIPTION_FACILITY_TRANSPORT + 3,
110         DESCRIPTION_TRANSPORT_INVALID_KEY                            = DESCRIPTION_FACILITY_TRANSPORT + 4,
111         DESCRIPTION_TRANSPORT_INVALID_URL_TYPE                       = DESCRIPTION_FACILITY_TRANSPORT + 5,
112         DESCRIPTION_TRANSPORT_DUPLICATE_ENDPOINT                     = DESCRIPTION_FACILITY_TRANSPORT + 6,
113         DESCRIPTION_TRANSPORT_IO_ERROR                               = DESCRIPTION_FACILITY_TRANSPORT + 7,
114         DESCRIPTION_TRANSPORT_TIMEOUT                                = DESCRIPTION_FACILITY_TRANSPORT + 8,
115         DESCRIPTION_TRANSPORT_CONNECTION_RESET                       = DESCRIPTION_FACILITY_TRANSPORT + 9,
116         DESCRIPTION_TRANSPORT_INCORRECT_REMOTE_AUTHENTICATION        = DESCRIPTION_FACILITY_TRANSPORT + 10,
117         DESCRIPTION_TRANSPORT_SERVER_REQUEST_ERROR                   = DESCRIPTION_FACILITY_TRANSPORT + 11,
118         DESCRIPTION_TRANSPORT_DECOMPRESSION_FAILURE                  = DESCRIPTION_FACILITY_TRANSPORT + 12,
119         DESCRIPTION_TRANSPORT_CONGESTED_END_POINT                    = DESCRIPTION_FACILITY_TRANSPORT + 13,
120         DESCRIPTION_TRANSPORT_UPNP_CANNOT_INIT                       = DESCRIPTION_FACILITY_TRANSPORT + 14,
121         DESCRIPTION_TRANSPORT_UPNP_CANNOT_ADD_MAPPING                = DESCRIPTION_FACILITY_TRANSPORT + 15,
122         DESCRIPTION_TRANSPORT_NAT_PMP_CANNOT_INIT                    = DESCRIPTION_FACILITY_TRANSPORT + 16,
123         DESCRIPTION_TRANSPORT_NAT_PMP_CANNOT_ADD_MAPPING             = DESCRIPTION_FACILITY_TRANSPORT + 17,
124         DESCRIPTION_TRANSPORT_UNDEFINED                              = DESCRIPTION_FACILITY_TRANSPORT + detail::DESCRIPTION_RETURN_CODE_UNDEFINED,
125 
126         DESCRIPTION_DOCORE_SUCCESS                                   = DESCRIPTION_FACILITY_DOCORE + 0,
127         DESCRIPTION_DOCORE_CALL_POSTPONED                            = DESCRIPTION_FACILITY_DOCORE + 1,
128         DESCRIPTION_DOCORE_STATION_NOT_REACHED                       = DESCRIPTION_FACILITY_DOCORE + 2,
129         DESCRIPTION_DOCORE_TARGET_STATION_DISCONNECT                 = DESCRIPTION_FACILITY_DOCORE + 3,
130         DESCRIPTION_DOCORE_LOCAL_STATION_LEAVING                     = DESCRIPTION_FACILITY_DOCORE + 4,
131         DESCRIPTION_DOCORE_OBJECT_NOT_FOUND                          = DESCRIPTION_FACILITY_DOCORE + 5,
132         DESCRIPTION_DOCORE_INVALID_ROLE                              = DESCRIPTION_FACILITY_DOCORE + 6,
133         DESCRIPTION_DOCORE_CALL_TIMEOUT                              = DESCRIPTION_FACILITY_DOCORE + 7,
134         DESCRIPTION_DOCORE_RMC_DISPATCH_FAILED                       = DESCRIPTION_FACILITY_DOCORE + 8,
135         DESCRIPTION_DOCORE_MIGRATION_IN_PROGRESS                     = DESCRIPTION_FACILITY_DOCORE + 9,
136         DESCRIPTION_DOCORE_NO_AUTHORITY                              = DESCRIPTION_FACILITY_DOCORE + 10,
137         DESCRIPTION_DOCORE_NO_TARGET_STATION_SPECIFIED               = DESCRIPTION_FACILITY_DOCORE + 11,
138         DESCRIPTION_DOCORE_JOIN_FAILED                               = DESCRIPTION_FACILITY_DOCORE + 12,
139         DESCRIPTION_DOCORE_JOIN_DENIED                               = DESCRIPTION_FACILITY_DOCORE + 13,
140         DESCRIPTION_DOCORE_CONNECTIVITY_TEST_FAILED                  = DESCRIPTION_FACILITY_DOCORE + 14,
141         DESCRIPTION_DOCORE_UNKNOWN                                   = DESCRIPTION_FACILITY_DOCORE + 15,
142         DESCRIPTION_DOCORE_UNFREED_REFERENCES                        = DESCRIPTION_FACILITY_DOCORE + 16,
143         DESCRIPTION_DOCORE_UNDEFINED                                 = DESCRIPTION_FACILITY_DOCORE + detail::DESCRIPTION_RETURN_CODE_UNDEFINED,
144 
145         DESCRIPTION_FPD_SUCCESS                                      = DESCRIPTION_FACILITY_FPD + 0,
146         DESCRIPTION_RMC_NOT_CALLED                                   = DESCRIPTION_FACILITY_FPD + 1,
147         DESCRIPTION_DAEMON_NOT_INITIALIZED                           = DESCRIPTION_FACILITY_FPD + 2,
148         DESCRIPTION_DAEMON_ALREADY_INITIALIZED                       = DESCRIPTION_FACILITY_FPD + 3,
149         DESCRIPTION_NOT_CONNECTED                                    = DESCRIPTION_FACILITY_FPD + 4,
150         DESCRIPTION_CONNECTED                                        = DESCRIPTION_FACILITY_FPD + 5,
151         DESCRIPTION_INITIALIZATION_FAILURE                           = DESCRIPTION_FACILITY_FPD + 6,
152         DESCRIPTION_OUT_OF_MEMORY                                    = DESCRIPTION_FACILITY_FPD + 7,
153         DESCRIPTION_RMC_FAILED                                       = DESCRIPTION_FACILITY_FPD + 8,
154         DESCRIPTION_INVALID_ARGUMENT                                 = DESCRIPTION_FACILITY_FPD + 9,
155         DESCRIPTION_INVALID_LOCAL_ACCOUNT_ID                         = DESCRIPTION_FACILITY_FPD + 10,
156         DESCRIPTION_INVALID_PRINCIPAL_ID                             = DESCRIPTION_FACILITY_FPD + 11,
157         DESCRIPTION_INVALID_LOCAL_FRIEND_CODE                        = DESCRIPTION_FACILITY_FPD + 12,
158         DESCRIPTION_LOCAL_ACCOUNT_NOT_EXISTS                         = DESCRIPTION_FACILITY_FPD + 13,
159         DESCRIPTION_LOCAL_ACCOUNT_NOT_LOADED                         = DESCRIPTION_FACILITY_FPD + 14,
160         DESCRIPTION_LOCAL_ACCOUNT_ALREADY_LOADED                     = DESCRIPTION_FACILITY_FPD + 15,
161         DESCRIPTION_FRIEND_ALREADY_EXISTS                            = DESCRIPTION_FACILITY_FPD + 16,
162         DESCRIPTION_FRIEND_NOT_EXISTS                                = DESCRIPTION_FACILITY_FPD + 17,
163         DESCRIPTION_FRIEND_NUM_MAX                                   = DESCRIPTION_FACILITY_FPD + 18,
164         DESCRIPTION_NOT_FRIEND                                       = DESCRIPTION_FACILITY_FPD + 19,
165         DESCRIPTION_FILE_IO_ERROR                                    = DESCRIPTION_FACILITY_FPD + 20,
166         DESCRIPTION_P2P_INTERNET_PROHIBITED                          = DESCRIPTION_FACILITY_FPD + 21,
167         DESCRIPTION_UNKNOWN                                          = DESCRIPTION_FACILITY_FPD + 22,
168         DESCRIPTION_INVALID_STATE                                    = DESCRIPTION_FACILITY_FPD + 23,
169         DESCRIPTION_MII_NOT_EXISTS                                   = DESCRIPTION_FACILITY_FPD + 24,
170         DESCRIPTION_ADD_FRIEND_PROHIBITED                            = DESCRIPTION_FACILITY_FPD + 25,
171         DESCRIPTION_INVALID_PREFERENCE                               = DESCRIPTION_FACILITY_FPD + 26,
172         DESCRIPTION_FPD_UNDEFINED                                    = DESCRIPTION_FACILITY_FPD + detail::DESCRIPTION_RETURN_CODE_UNDEFINED,
173 
174         DESCRIPTION_AUTHENTICATION_SUCCESS                           = DESCRIPTION_FACILITY_AUTHENTICATION + 0,
175         DESCRIPTION_AUTHENTICATION_NAS_AUTHENTICATE_ERROR            = DESCRIPTION_FACILITY_AUTHENTICATION + 1,
176         DESCRIPTION_AUTHENTICATION_TOKEN_PARSE_ERROR                 = DESCRIPTION_FACILITY_AUTHENTICATION + 2,
177         DESCRIPTION_AUTHENTICATION_HTTP_CONNECTION_ERROR             = DESCRIPTION_FACILITY_AUTHENTICATION + 3,
178         DESCRIPTION_AUTHENTICATION_HTTP_DNS_ERROR                    = DESCRIPTION_FACILITY_AUTHENTICATION + 4,
179         DESCRIPTION_AUTHENTICATION_HTTP_GET_PROXY_SETTING            = DESCRIPTION_FACILITY_AUTHENTICATION + 5,
180         DESCRIPTION_AUTHENTICATION_TOKEN_EXPIRED                     = DESCRIPTION_FACILITY_AUTHENTICATION + 6,
181         DESCRIPTION_AUTHENTICATION_VALIDATION_FAILED                 = DESCRIPTION_FACILITY_AUTHENTICATION + 7,
182         DESCRIPTION_AUTHENTICATION_INVALID_PARAM                     = DESCRIPTION_FACILITY_AUTHENTICATION + 8,
183         DESCRIPTION_AUTHENTICATION_PRINCIPAL_ID_UNMATCHED            = DESCRIPTION_FACILITY_AUTHENTICATION + 9,
184         DESCRIPTION_AUTHENTICATION_MOVE_COUNT_UNMATCH                = DESCRIPTION_FACILITY_AUTHENTICATION + 10,
185         DESCRIPTION_AUTHENTICATION_UNDER_MAINTENANCE                 = DESCRIPTION_FACILITY_AUTHENTICATION + 11,
186         DESCRIPTION_AUTHENTICATION_UNSUPPORTED_VERSION               = DESCRIPTION_FACILITY_AUTHENTICATION + 12,
187         DESCRIPTION_AUTHENTICATION_UNKNOWN                           = DESCRIPTION_FACILITY_AUTHENTICATION + 13,
188         DESCRIPTION_AUTHENTICATION_UNDEFINED                         = DESCRIPTION_FACILITY_AUTHENTICATION + detail::DESCRIPTION_RETURN_CODE_UNDEFINED,
189 
190         DESCRIPTION_FACILITY_CTR        = 0 << detail::DESCRIPTION_FACILITY_SHIFT,
191 
192         DESCRIPTION_INVALID_FRIEND_CODE = DESCRIPTION_FACILITY_CTR + 1,
193         DESCRIPTION_NOT_LOGGED_IN,
194         DESCRIPTION_NOT_FRIENDS_RESULT,
195         DESCRIPTION_UNDEFINED_FACILITY,
196         DESCRIPTION_AC_NOT_CONNECTED
197     };
198 
199 
200     /* Please see man pages for details
201 
202 
203     */
204     NN_DEFINE_RESULT_CONST(
205         ResultCoreTimeOut,
206         Result::LEVEL_STATUS,   Result::SUMMARY_CANCELLED,        Result::MODULE_NN_FRIENDS,
207         DESCRIPTION_CORE_TIMEOUT
208     );
209 
210     /* Please see man pages for details
211 
212 
213     */
214     NN_DEFINE_RESULT_CONST(
215         ResultCoreCallInitiationFailure,
216         Result::LEVEL_STATUS,   Result::SUMMARY_INTERNAL,         Result::MODULE_NN_FRIENDS,
217         DESCRIPTION_CORE_CALL_INITIATION_FAILURE
218     );
219 
220     /* Please see man pages for details
221 
222 
223     */
224     NN_DEFINE_RESULT_CONST(
225         ResultTransportConnectionFailure,
226         Result::LEVEL_STATUS,   Result::SUMMARY_INTERNAL,         Result::MODULE_NN_FRIENDS,
227         DESCRIPTION_TRANSPORT_CONNECTION_FAILURE
228     );
229 
230 
231     /* Please see man pages for details
232 
233 
234 
235     */
236     NN_DEFINE_RESULT_CONST(
237         ResultRmcNotCalled,
238         Result::LEVEL_SUCCESS,   Result::SUMMARY_SUCCESS,          Result::MODULE_NN_FRIENDS,
239         DESCRIPTION_RMC_NOT_CALLED
240     );
241 
242     /* Please see man pages for details
243 
244 
245 
246     */
247     NN_DEFINE_RESULT_CONST(
248         ResultDaemonNotInitialized,
249         Result::LEVEL_STATUS,    Result::SUMMARY_INVALID_STATE,    Result::MODULE_NN_FRIENDS,
250         DESCRIPTION_DAEMON_NOT_INITIALIZED
251     );
252 
253     /* Please see man pages for details
254 
255 
256 
257     */
258     NN_DEFINE_RESULT_CONST(
259         ResultDaemonAlreadyInitialized,
260         Result::LEVEL_STATUS,    Result::SUMMARY_INVALID_STATE,    Result::MODULE_NN_FRIENDS,
261         DESCRIPTION_DAEMON_ALREADY_INITIALIZED
262     );
263 
264     /* Please see man pages for details
265 
266 
267 
268 
269     */
270     NN_DEFINE_RESULT_CONST(
271         ResultNotConnected,
272         Result::LEVEL_PERMANENT, Result::SUMMARY_INVALID_STATE,    Result::MODULE_NN_FRIENDS,
273         DESCRIPTION_NOT_CONNECTED
274     );
275 
276     /* Please see man pages for details
277 
278 
279 
280 
281     */
282     NN_DEFINE_RESULT_CONST(
283         ResultConnected,
284         Result::LEVEL_PERMANENT, Result::SUMMARY_INVALID_STATE,    Result::MODULE_NN_FRIENDS,
285         DESCRIPTION_CONNECTED
286     );
287 
288     /* Please see man pages for details
289 
290 
291 
292     */
293     NN_DEFINE_RESULT_CONST(
294         ResultInitializationFailure,
295         Result::LEVEL_STATUS,    Result::SUMMARY_INTERNAL,         Result::MODULE_NN_FRIENDS,
296         DESCRIPTION_INITIALIZATION_FAILURE
297     );
298 
299     /* Please see man pages for details
300 
301 
302 
303     */
304     NN_DEFINE_RESULT_CONST(
305         ResultOutOfMemory,
306         Result::LEVEL_STATUS,    Result::SUMMARY_OUT_OF_RESOURCE,  Result::MODULE_NN_FRIENDS,
307         DESCRIPTION_OUT_OF_MEMORY
308     );
309 
310     /* Please see man pages for details
311 
312 
313 
314     */
315     NN_DEFINE_RESULT_CONST(
316         ResultRmcFailed,
317         Result::LEVEL_PERMANENT, Result::SUMMARY_CANCELLED,        Result::MODULE_NN_FRIENDS,
318         DESCRIPTION_RMC_FAILED
319     );
320 
321     /* Please see man pages for details
322 
323 
324     */
325     NN_DEFINE_RESULT_CONST(
326         ResultInvalidArgument,
327         Result::LEVEL_USAGE,     Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_FRIENDS,
328         DESCRIPTION_INVALID_ARGUMENT
329     );
330 
331     /* Please see man pages for details
332 
333 
334 
335     */
336     NN_DEFINE_RESULT_CONST(
337         ResultInvalidLocalAccountId,
338         Result::LEVEL_USAGE,     Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_FRIENDS,
339         DESCRIPTION_INVALID_LOCAL_ACCOUNT_ID
340     );
341 
342     /* Please see man pages for details
343 
344 
345     */
346     NN_DEFINE_RESULT_CONST(
347         ResultInvalidPrincipalId,
348         Result::LEVEL_USAGE,     Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_FRIENDS,
349         DESCRIPTION_INVALID_PRINCIPAL_ID
350     );
351 
352     /* Please see man pages for details
353 
354 
355 
356     */
357     NN_DEFINE_RESULT_CONST(
358         ResultInvalidLocalFriendCode,
359         Result::LEVEL_USAGE,     Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_FRIENDS,
360         DESCRIPTION_INVALID_LOCAL_FRIEND_CODE
361     );
362 
363     /* Please see man pages for details
364 
365 
366 
367     */
368     NN_DEFINE_RESULT_CONST(
369         ResultLocalAccountNotExists,
370         Result::LEVEL_STATUS,    Result::SUMMARY_NOT_FOUND,        Result::MODULE_NN_FRIENDS,
371         DESCRIPTION_LOCAL_ACCOUNT_NOT_EXISTS
372     );
373 
374     /* Please see man pages for details
375 
376 
377 
378     */
379     NN_DEFINE_RESULT_CONST(
380         ResultLocalAccountNotLoaded,
381         Result::LEVEL_STATUS,    Result::SUMMARY_INVALID_STATE,    Result::MODULE_NN_FRIENDS,
382         DESCRIPTION_LOCAL_ACCOUNT_NOT_LOADED
383     );
384 
385     /* Please see man pages for details
386 
387 
388 
389     */
390     NN_DEFINE_RESULT_CONST(
391         ResultLocalAccountAlreadyLoaded,
392         Result::LEVEL_PERMANENT, Result::SUMMARY_INVALID_STATE,    Result::MODULE_NN_FRIENDS,
393         DESCRIPTION_LOCAL_ACCOUNT_ALREADY_LOADED
394     );
395 
396     /* Please see man pages for details
397 
398 
399 
400     */
401     NN_DEFINE_RESULT_CONST(
402         ResultFriendAlreadyExists,
403         Result::LEVEL_PERMANENT, Result::SUMMARY_WRONG_ARGUMENT,   Result::MODULE_NN_FRIENDS,
404         DESCRIPTION_FRIEND_ALREADY_EXISTS
405     );
406 
407     /* Please see man pages for details
408 
409 
410 
411     */
412     NN_DEFINE_RESULT_CONST(
413         ResultFriendNotExists,
414         Result::LEVEL_PERMANENT, Result::SUMMARY_WRONG_ARGUMENT,   Result::MODULE_NN_FRIENDS,
415         DESCRIPTION_FRIEND_NOT_EXISTS
416     );
417 
418     /* Please see man pages for details
419 
420 
421 
422     */
423     NN_DEFINE_RESULT_CONST(
424         ResultFriendNumMax,
425         Result::LEVEL_PERMANENT, Result::SUMMARY_OUT_OF_RESOURCE,  Result::MODULE_NN_FRIENDS,
426         DESCRIPTION_FRIEND_NUM_MAX
427     );
428 
429     /* Please see man pages for details
430 
431 
432 
433     */
434     NN_DEFINE_RESULT_CONST(
435         ResultNotFriend,
436         Result::LEVEL_PERMANENT, Result::SUMMARY_WRONG_ARGUMENT,   Result::MODULE_NN_FRIENDS,
437         DESCRIPTION_NOT_FRIEND
438     );
439 
440     /* Please see man pages for details
441 
442 
443 
444     */
445     NN_DEFINE_RESULT_CONST(
446         ResultFileIoError,
447         Result::LEVEL_PERMANENT, Result::SUMMARY_INTERNAL,         Result::MODULE_NN_FRIENDS,
448         DESCRIPTION_FILE_IO_ERROR
449     );
450 
451     /* Please see man pages for details
452 
453 
454     */
455     NN_DEFINE_RESULT_CONST(
456         ResultP2pInternetProhibited,
457         Result::LEVEL_PERMANENT, Result::SUMMARY_INVALID_STATE,    Result::MODULE_NN_FRIENDS,
458         DESCRIPTION_P2P_INTERNET_PROHIBITED
459     );
460 
461     /* Please see man pages for details
462 
463 
464 
465     */
466     NN_DEFINE_RESULT_CONST(
467         ResultUnknown,
468         Result::LEVEL_STATUS,    Result::SUMMARY_INTERNAL,         Result::MODULE_NN_FRIENDS,
469         DESCRIPTION_UNKNOWN
470     );
471 
472     /* Please see man pages for details
473 
474 
475 
476     */
477     NN_DEFINE_RESULT_CONST(
478         ResultInvalidState,
479         Result::LEVEL_STATUS,    Result::SUMMARY_INVALID_STATE,    Result::MODULE_NN_FRIENDS,
480         DESCRIPTION_INVALID_STATE
481     );
482 
483     /* Please see man pages for details
484 
485 
486     */
487     NN_DEFINE_RESULT_CONST(
488         ResultMiiNotExists,
489         Result::LEVEL_PERMANENT, Result::SUMMARY_INVALID_STATE,    Result::MODULE_NN_FRIENDS,
490         DESCRIPTION_MII_NOT_EXISTS
491     );
492 
493     /* Please see man pages for details
494 
495 
496     */
497     NN_DEFINE_RESULT_CONST(
498         ResultAddFriendProhibited,
499         Result::LEVEL_PERMANENT, Result::SUMMARY_INVALID_STATE,    Result::MODULE_NN_FRIENDS,
500         DESCRIPTION_ADD_FRIEND_PROHIBITED
501     );
502 
503     /* Please see man pages for details
504 
505 
506     */
507     NN_DEFINE_RESULT_CONST(
508         ResultInvalidPreference,
509         Result::LEVEL_PERMANENT, Result::SUMMARY_INVALID_STATE,    Result::MODULE_NN_FRIENDS,
510         DESCRIPTION_INVALID_PREFERENCE
511     );
512 
513 
514     /* Please see man pages for details
515 
516 
517     */
518     NN_DEFINE_RESULT_CONST(
519         ResultNasAuthenticationError,
520         Result::LEVEL_STATUS,    Result::SUMMARY_INTERNAL,         Result::MODULE_NN_FRIENDS,
521         DESCRIPTION_AUTHENTICATION_NAS_AUTHENTICATE_ERROR
522     );
523 
524     /* Please see man pages for details
525 
526 
527     */
528     NN_DEFINE_RESULT_CONST(
529         ResultAuthenticationTokenParseError,
530         Result::LEVEL_STATUS,    Result::SUMMARY_INTERNAL,         Result::MODULE_NN_FRIENDS,
531         DESCRIPTION_AUTHENTICATION_TOKEN_PARSE_ERROR
532     );
533 
534     /* Please see man pages for details
535 
536 
537     */
538     NN_DEFINE_RESULT_CONST(
539         ResultAuthenticationHttpConnectionError,
540         Result::LEVEL_STATUS,    Result::SUMMARY_INTERNAL,         Result::MODULE_NN_FRIENDS,
541         DESCRIPTION_AUTHENTICATION_HTTP_CONNECTION_ERROR
542     );
543 
544     /* Please see man pages for details
545 
546 
547     */
548     NN_DEFINE_RESULT_CONST(
549         ResultAuthenticationDnsError,
550         Result::LEVEL_STATUS,    Result::SUMMARY_INTERNAL,         Result::MODULE_NN_FRIENDS,
551         DESCRIPTION_AUTHENTICATION_HTTP_DNS_ERROR
552     );
553 
554     /* Please see man pages for details
555 
556 
557     */
558     NN_DEFINE_RESULT_CONST(
559         ResultAuthenticationHttpGetProxySetting,
560         Result::LEVEL_STATUS,    Result::SUMMARY_INTERNAL,         Result::MODULE_NN_FRIENDS,
561         DESCRIPTION_AUTHENTICATION_HTTP_GET_PROXY_SETTING
562     );
563 
564     /* Please see man pages for details
565 
566 
567 
568     */
569     NN_DEFINE_RESULT_CONST(
570         ResultAuthenticationTokenExpired,
571         Result::LEVEL_STATUS,    Result::SUMMARY_INTERNAL,         Result::MODULE_NN_FRIENDS,
572         DESCRIPTION_AUTHENTICATION_TOKEN_EXPIRED
573     );
574 
575     /* Please see man pages for details
576 
577 
578     */
579     NN_DEFINE_RESULT_CONST(
580         ResultAuthenticationValidationFailed,
581         Result::LEVEL_STATUS,    Result::SUMMARY_INTERNAL,         Result::MODULE_NN_FRIENDS,
582         DESCRIPTION_AUTHENTICATION_VALIDATION_FAILED
583     );
584 
585     /* Please see man pages for details
586 
587 
588     */
589     NN_DEFINE_RESULT_CONST(
590         ResultAuthenticationInvalidParam,
591         Result::LEVEL_STATUS,    Result::SUMMARY_INTERNAL,         Result::MODULE_NN_FRIENDS,
592         DESCRIPTION_AUTHENTICATION_INVALID_PARAM
593     );
594 
595     /* Please see man pages for details
596 
597 
598     */
599     NN_DEFINE_RESULT_CONST(
600         ResultAuthenticationPrincipalIdUnmatched,
601         Result::LEVEL_STATUS,    Result::SUMMARY_INTERNAL,         Result::MODULE_NN_FRIENDS,
602         DESCRIPTION_AUTHENTICATION_PRINCIPAL_ID_UNMATCHED
603     );
604 
605     /* Please see man pages for details
606 
607 
608     */
609     NN_DEFINE_RESULT_CONST(
610         ResultAuthenticationMoveCountUnmatch,
611         Result::LEVEL_STATUS,    Result::SUMMARY_INTERNAL,         Result::MODULE_NN_FRIENDS,
612         DESCRIPTION_AUTHENTICATION_MOVE_COUNT_UNMATCH
613     );
614 
615     /* Please see man pages for details
616 
617 
618     */
619     NN_DEFINE_RESULT_CONST(
620         ResultAuthenticationUnderMaintenance,
621         Result::LEVEL_STATUS,    Result::SUMMARY_INTERNAL,         Result::MODULE_NN_FRIENDS,
622         DESCRIPTION_AUTHENTICATION_UNDER_MAINTENANCE
623     );
624 
625     /* Please see man pages for details
626 
627 
628     */
629     NN_DEFINE_RESULT_CONST(
630         ResultAuthenticationUnsupportedVersion,
631         Result::LEVEL_STATUS,    Result::SUMMARY_INTERNAL,         Result::MODULE_NN_FRIENDS,
632         DESCRIPTION_AUTHENTICATION_UNSUPPORTED_VERSION
633     );
634 
635     /* Please see man pages for details
636 
637 
638 
639     */
640     NN_DEFINE_RESULT_CONST(
641         ResultAuthenticationUnknown,
642         Result::LEVEL_STATUS,    Result::SUMMARY_INTERNAL,         Result::MODULE_NN_FRIENDS,
643         DESCRIPTION_AUTHENTICATION_UNKNOWN
644     );
645 
646     /* Please see man pages for details
647 
648 
649 
650     */
651     NN_DEFINE_RESULT_CONST(
652         ResultAuthenticationUndefined,
653         Result::LEVEL_STATUS,    Result::SUMMARY_INTERNAL,         Result::MODULE_NN_FRIENDS,
654         DESCRIPTION_AUTHENTICATION_UNDEFINED
655     );
656 
657 
658     /* Please see man pages for details
659 
660 
661 
662     */
663     NN_DEFINE_RESULT_CONST(
664         ResultInvalidFriendCode,
665         Result::LEVEL_USAGE,     Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_FRIENDS,
666         DESCRIPTION_INVALID_FRIEND_CODE
667     );
668 
669     /* Please see man pages for details
670 
671 
672 
673     */
674     NN_DEFINE_RESULT_CONST(
675         ResultNotLoggedIn,
676         Result::LEVEL_PERMANENT, Result::SUMMARY_INVALID_STATE,    Result::MODULE_NN_FRIENDS,
677         DESCRIPTION_NOT_LOGGED_IN
678     );
679 
680     /* Please see man pages for details
681 
682 
683     */
684     NN_DEFINE_RESULT_CONST(
685         ResultNotFriendsResult,
686         Result::LEVEL_USAGE,     Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_FRIENDS,
687         DESCRIPTION_NOT_FRIENDS_RESULT
688     );
689 
690     /* Please see man pages for details
691 
692 
693 
694     */
695     NN_DEFINE_RESULT_CONST(
696         ResultUndefinedFacilitySuccess,
697         Result::LEVEL_SUCCESS,   Result::SUMMARY_SUCCESS,          Result::MODULE_NN_FRIENDS,
698         DESCRIPTION_UNDEFINED_FACILITY
699     );
700 
701     /* Please see man pages for details
702 
703 
704 
705     */
706     NN_DEFINE_RESULT_CONST(
707         ResultUndefinedFacilityFailure,
708         Result::LEVEL_PERMANENT, Result::SUMMARY_INTERNAL,         Result::MODULE_NN_FRIENDS,
709         DESCRIPTION_UNDEFINED_FACILITY
710     );
711 
712     /* Please see man pages for details
713 
714 
715     */
716     NN_DEFINE_RESULT_CONST(
717         ResultAcNotConnected,
718         Result::LEVEL_PERMANENT, Result::SUMMARY_INVALID_STATE,    Result::MODULE_NN_FRIENDS,
719         DESCRIPTION_AC_NOT_CONNECTED
720     );
721 
722 
723     /* Please see man pages for details
724 
725 
726     */
727     NN_DEFINE_RESULT_CONST(
728         ResultNotInitialized,
729         Result::LEVEL_PERMANENT, Result::SUMMARY_INVALID_STATE,    Result::MODULE_NN_FRIENDS,
730         Result::DESCRIPTION_NOT_INITIALIZED
731     );
732 
733     /* Please see man pages for details
734 
735 
736 
737     */
738     NN_DEFINE_RESULT_CONST(
739         ResultAlreadyInitialized,
740         Result::LEVEL_PERMANENT, Result::SUMMARY_INVALID_STATE,    Result::MODULE_NN_FRIENDS,
741         Result::DESCRIPTION_ALREADY_INITIALIZED
742     );
743 
744     /* Please see man pages for details
745 
746 
747     */
748     NN_DEFINE_RESULT_CONST(
749         ResultInvalidHandle,
750         Result::LEVEL_USAGE,     Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_FRIENDS,
751         Result::DESCRIPTION_INVALID_HANDLE
752     );
753 
754     /* Please see man pages for details
755 
756 
757     */
758     NN_DEFINE_RESULT_CONST(
759         ResultInvalidPointer,
760         Result::LEVEL_USAGE,     Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_FRIENDS,
761         Result::DESCRIPTION_INVALID_POINTER
762     );
763 
764     /* Please see man pages for details
765 
766 
767     */
768     NN_DEFINE_RESULT_CONST(
769         ResultTooLarge,
770         Result::LEVEL_USAGE,     Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_FRIENDS,
771         Result::DESCRIPTION_TOO_LARGE
772     );
773 
774 
775     /* Please see man pages for details
776 
777 
778 
779 
780     */
781     NN_DEFINE_RESULT_CONST(
782         ResultAlreadyDone,
783         Result::LEVEL_SUCCESS,   Result::SUMMARY_NOTHING_HAPPENED, Result::MODULE_NN_FRIENDS,
784         Result::DESCRIPTION_ALREADY_DONE
785     );
786 
787     /* Please see man pages for details
788 
789 
790 
791     */
792     NN_DEFINE_RESULT_CONST(
793         ResultTemporarilyBusy,
794         Result::LEVEL_STATUS,    Result::SUMMARY_INVALID_STATE,    Result::MODULE_NN_FRIENDS,
795         Result::DESCRIPTION_BUSY
796     );
797 
798 
799     /* Please see man pages for details
800 
801 
802     */
803     NN_DEFINE_RESULT_CONST(
804         ResultNotAuthorized,
805         Result::LEVEL_STATUS,    Result::SUMMARY_INVALID_STATE,    Result::MODULE_NN_FRIENDS,
806         Result::DESCRIPTION_NOT_AUTHORIZED
807     );
808 
809     /* Please see man pages for details
810 
811 
812     */
813     NN_DEFINE_RESULT_CONST(
814         ResultUnexpectedState,
815         Result::LEVEL_STATUS,    Result::SUMMARY_INVALID_STATE,    Result::MODULE_NN_FRIENDS,
816         Result::DESCRIPTION_NOT_IMPLEMENTED
817     );
818 
819 
820     namespace detail {
MakeResult(Result::Level level,Result::Summary summary,int description)821         inline Result MakeResult(Result::Level level, Result::Summary summary, int description)
822             { return Result(level, summary, Result::MODULE_NN_FRIENDS, description); }
823 
MakeInfoResult(Result::Summary summary,int description)824         inline Result MakeInfoResult(Result::Summary summary, int description)
825             { return Result(Result::LEVEL_INFO, summary, Result::MODULE_NN_FRIENDS, description); }
MakeFatalResult(Result::Summary summary,int description)826         inline Result MakeFatalResult(Result::Summary summary, int description)
827             { return Result(Result::LEVEL_FATAL, summary, Result::MODULE_NN_FRIENDS, description); }
MakeResetResult(Result::Summary summary,int description)828         inline Result MakeResetResult(Result::Summary summary, int description)
829             { return Result(Result::LEVEL_RESET, summary, Result::MODULE_NN_FRIENDS, description); }
MakeReInitResult(Result::Summary summary,int description)830         inline Result MakeReInitResult(Result::Summary summary, int description)
831             { return Result(Result::LEVEL_REINIT, summary, Result::MODULE_NN_FRIENDS, description); }
MakeUsageResult(Result::Summary summary,int description)832         inline Result MakeUsageResult(Result::Summary summary, int description)
833             { return Result(Result::LEVEL_USAGE, summary, Result::MODULE_NN_FRIENDS, description); }
MakePermanentResult(Result::Summary summary,int description)834         inline Result MakePermanentResult(Result::Summary summary, int description)
835             { return Result(Result::LEVEL_PERMANENT, summary, Result::MODULE_NN_FRIENDS, description); }
MakeTemporaryResult(Result::Summary summary,int description)836         inline Result MakeTemporaryResult(Result::Summary summary, int description)
837             { return Result(Result::LEVEL_TEMPORARY, summary, Result::MODULE_NN_FRIENDS, description); }
MakeStatusResult(Result::Summary summary,int description)838         inline Result MakeStatusResult(Result::Summary summary, int description)
839             { return Result(Result::LEVEL_STATUS, summary, Result::MODULE_NN_FRIENDS, description); }
840     }
841 
842 } // end of namespace CTR
843     using namespace CTR;
844 } // end of namespace friends
845 } // end of namespace nn
846 
847 #endif // __cplusplus
848 
849 #endif /* NN_FRIENDS_CTR_FRIENDS_RESULT_H_ */
850