This file is indexed.

/usr/include/yuma/ncx/ncxconst.h is in libyuma-dev 2.10-1build1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
/*
 * Copyright (c) 2008 - 2012, Andy Bierman, All Rights Reserved.
 * 
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License 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 limitations
 * under the License.    
 */
#ifndef _H_ncxconst
#define _H_ncxconst

/*  FILE: ncxconst.h
*********************************************************************
*								    *
*			 P U R P O S E				    *
*								    *
*********************************************************************

  Contains NCX constants separated to prevent H file include loops
 
*********************************************************************
*								    *
*		   C H A N G E	 H I S T O R Y			    *
*								    *
*********************************************************************

date	     init     comment
----------------------------------------------------------------------
14-nov-05    abb      Begun; split from ncx.h
04-feb-06    abb      Move base/nc.h constants into this file
10-nov-07    abb      Moved types typ ncxtypes.h
*/

#include <math.h>
#include <xmlstring.h>

#ifdef __cplusplus
extern "C" {
#endif

/********************************************************************
*								    *
*			 C O N S T A N T S			    *
*								    *
*********************************************************************/

/* NETCONF Base URN */
#define NC_VER          "1.0"
#define NC_PREFIX       (const xmlChar *)"nc"

#define NC_MODULE       (const xmlChar *)"yuma123-netconf"

#define NCN_MODULE       (const xmlChar *)"notifications"

#define NCX_MODULE       (const xmlChar *)"yuma-ncx"
#define NCX_PREFIX       (const xmlChar *)"ncx"

/* source of secure and very-secure extensions! */
#define NACM_PREFIX      (const xmlChar *)"nacm"

#define NC_OK_REPLY  (const xmlChar *)"RpcOkReplyType"

/* NETCONF namespace used for base:10 and base:1.1 */
#define NC_URN  (const xmlChar *)"urn:ietf:params:xml:ns:netconf:base:1.0"

/* NETCONF SSH End of Message Marker */
#define NC_SSH_END "]]>]]>"
#define NC_SSH_END_LEN 6

/* NETCONF SSH End of Chunks Marker */
#define NC_SSH_END_CHUNKS "\n##\n"
#define NC_SSH_END_CHUNKS_LEN 4

/* NETCONF Module Owner */
#define NC_OWNER        (const xmlChar *)"ietf"

/* NETCONF edit-config operation attribute name */
#define NC_OPERATION_ATTR_NAME (const xmlChar *)"operation"

#define NC_RPC_REPLY_TYPE (const xmlChar *)"rpc-reply"

#define NCX_SSH_PORT    22
#define NCX_NCSSH_PORT  830

#define INVALID_URN    (const xmlChar *)"INVALID"

/* base:1.1 subtree wildcard URN */
#define WILDCARD_URN   (const xmlChar *)""
    
/* max number len to use for static buffer allocation only */
#define NCX_MAX_NUMLEN   47

 /* all name fields in YANG can be 1 to N bytes
  * set a limit based on likely malloc failure
  */
#define NCX_MAX_NLEN  0xffffffe

#define NCX_MAX_USERNAME_LEN   127

/* ncxserver server transport */
#define NCX_SERVER_TRANSPORT "ssh"

/* ncxserver server transport for local connections*/
#define NCX_SERVER_TRANSPORT_LOCAL "local"

/* ncxserver version */
#define NCX_SERVER_VERSION   1


/* URN for NETCONF standard modules */
#define NC_URN1         (const xmlChar *)"urn:netconf:params:xml:ns:"


/* URN for with-defaults 'default' XML attribute */
#define NC_WD_ATTR_URN (const xmlChar *)\
    "urn:ietf:params:xml:ns:netconf:default:1.0"
#define NC_WD_ATTR_PREFIX (const xmlChar *)"wda"

/* URN for NCX extensions */
#define NCX_URN    (const xmlChar *)"http://netconfcentral.org/ns/yuma-ncx"
#define NCX_MOD    (const xmlChar *)"yuma-ncx"


/* URN for XSD */
#define XSD_URN         (const xmlChar *)"http://www.w3.org/2001/XMLSchema"
#define XSD_PREFIX      (const xmlChar *)"xs"

/* URN for XSI */
#define XSI_URN         (const xmlChar *)\
			 "http://www.w3.org/2001/XMLSchema-instance"
#define XSI_PREFIX      (const xmlChar *)"xsi"


/* URN for XML */
#define XML_URN         (const xmlChar *)\
			 "http://www.w3.org/XML/1998/namespace"
#define XML_PREFIX      (const xmlChar *)"xml"


/* URN for NETCONF Notifications */
#define NCN_URN         (const xmlChar *)\
                         "urn:ietf:params:xml:ns:netconf:notification:1.0"
#define NCN_PREFIX      (const xmlChar *)"ncn"


/* schemaLocation string */
#define NCX_SCHEMA_LOC  (const xmlChar *)"http://www.netconfcentral.org/xsd/"

#define NCX_XSD_EXT     (const xmlChar *)"xsd"

#define NCX_URNP1       (const xmlChar *)"http://"


/* default prefix to use for NCX namespace */
#define NCX_PREFIX      (const xmlChar *)"ncx"
#define NCX_PREFIX_LEN  3

/* default prefix for the xmlns namespace (not really used */
#define NS_PREFIX      (const xmlChar *)"namespace"
#define NS_PREFIX_LEN  2
#define NS_URN     (const xmlChar *)"http://www.w3.org/2000/xmlns/"

/* needed for xml:lang attribute */
#define NCX_XML_URN  (const xmlChar *)"http://www.w3.org/XML/1998/namespace"
#define NCX_XML_SLOC (const xmlChar *)\
		      "http://www.w3.org/XML/1998/namespace"\
		      "\n    http://www.w3.org/2001/xml.xsd"

#define EMPTY_STRING  (const xmlChar *)""

#define NCX_DEF_MODULE  (const xmlChar *)"yuma123-netconf"

#define NCX_DEF_LANG    (const xmlChar *)"en"

#define NCX_DEF_MERGETYPE NCX_MERGE_LAST

#define NCX_DEF_FRACTION_DIGITS 2

#define NCX_DEF_LINELEN     72

#define NCX_MAX_LINELEN     4095

#define NCX_DEF_WARN_IDLEN    64

#define NCX_DEF_WARN_LINELEN  72

#define NCX_CONF_SUFFIX     (const xmlChar *)"conf"

#define NCX_CLI_START_CH   '-'

#define NCX_SQUOTE_CH  '\''
#define NCX_QUOTE_CH   '\"'
#define NCX_VAR_CH     '$'

/* inline XML entered as [<foo>...</foo>] */
#define NCX_XML_CH     '<'
#define NCX_XML1a_CH   '['
#define NCX_XML1b_CH   '<'
#define NCX_XML2a_CH   '>'
#define NCX_XML2b_CH   ']'

#define NCX_ASSIGN_CH  '='
#define NCX_AT_CH      '@'

#define NCX_TABSIZE     8

#define NCX_VERSION_BUFFSIZE  24

/* start of comment token in all NCX text */
#define NCX_COMMENT_CH   '#'

/* scoped identifier field separator token */
#define NCX_SCOPE_CH     '/'

/* filespec identifier field separator token */
#define NCX_PATHSEP_CH     '/'

/* prefix scoped identifier field separator token */
#define NCX_MODSCOPE_CH     ':'

/* start of a double quoted string in NCX text */
#define NCX_QSTRING_CH   '"'

/* start of a single quoted string in NCX text */
#define NCX_SQSTRING_CH   '\''

/* start of an NCX or XPath varbind */
#define NCX_VARBIND_CH    '$'

/* Standard 0x0 syntax to indicate a HEX number is specified */
#define NCX_IS_HEX_CH(c) ((c)=='x' || (c)=='X')

/* max hex digits in the value part of a hex number */
#define NCX_MAX_HEXCHAR 16

/* max attributes that will be printed per line */
#define NCX_ATTR_PER_LINE    3
#define NCX_BIG_ATTR_SIZE    24

/* max decimal digits in a plain int */
#define NCX_MAX_DCHAR   20

/* max digits in a real number */
#define NCX_MAX_RCHAR   255

/* Maximum string length (2^^31 - 1) */
#define NCX_MAX_STRLEN  0x7fffffff

/* Maximum string of a single quoted string (64K - 1) */
#define NCX_MAX_Q_STRLEN  0xffff

/* max number of cached ncx_filptr_t records */
#define NCX_DEF_FILPTR_CACHESIZE  300

/* default indent amount for nesting XML output */
#define NCX_DEF_INDENT  2

/* default virtual value cache timeout value in seconds
 * use 0 to disable the cache and refresh a virtual value
 * every time is is retrieved (1 second default)
 */
#define NCX_DEF_VTIMEOUT  1

/* Default startup config transaction ID file name */
#define NCX_DEF_STARTUP_TXID_FILE  (const xmlChar *)"startup-cfg-txid.txt"

/* Default startup config data file name */
#define NCX_DEF_STARTUP_FILE  (const xmlChar *)"startup-cfg.xml"

#define NCX_YUMA_HOME_STARTUP_FILE  (const xmlChar *)\
    "$YUMA_HOME/data/startup-cfg.xml"

#define NCX_YUMA_HOME_STARTUP_DIR  (const xmlChar *)\
    "$YUMA_HOME/data/"

#define NCX_DOT_YUMA_STARTUP_FILE  (const xmlChar *)\
    "~/.yuma/startup-cfg.xml"

#define NCX_DOT_YUMA_STARTUP_DIR  (const xmlChar *)"~/.yuma/"

#define NCX_YUMA_INSTALL_STARTUP_FILE  (const xmlChar *)\
    "$YUMA_INSTALL/data/startup-cfg.xml"

#define NCX_DEF_INSTALL_STARTUP_FILE  (const xmlChar *)\
    "/etc/yuma/startup-cfg.xml"

/* Default backup config data file name */
#define NCX_DEF_BACKUP_FILE  (const xmlChar *)"backup-cfg.xml"

/* default conrm-tmieout value in seconds */
#define NCX_DEF_CONFIRM_TIMEOUT  600

/* default value for the with-defaults option */
#define NCX_DEF_WITHDEF   NCX_WITHDEF_EXPLICIT

/* default value for the with-metadata option */
#define NCX_DEF_WITHMETA  FALSE

/* default value for the agent superuser */
#define NCX_DEF_SUPERUSER  NCX_EL_SUPERUSER

#define NCX_DEF_STREAM_NAME  (const xmlChar *)"NETCONF"

#define NCX_DEF_STREAM_DESCR (const xmlChar *)\
    "default NETCONF event stream"

/* String start char:
 * if the XML string starts with a double quote
 * then it will be interpreted as whitespace-allowed
 */
#define NCX_STR_START   (xmlChar)'"'
#define NCX_STR_END     (xmlChar)'"'


/* Enumeration number start and end chars */
#define NCX_ENU_START   (xmlChar)'('
#define NCX_ENU_END     (xmlChar)')'


/* String names matching psd_pstype_t enums */
#define NCX_PSTYP_CLI        (const xmlChar *)"cli"
#define NCX_PSTYP_DATA       (const xmlChar *)"data"
#define NCX_PSTYP_RPC        (const xmlChar *)"rpc"

/* file name prefix to use for split SIL files */
#define NCX_USER_SIL_PREFIX (const xmlChar *)"u_"
#define NCX_YUMA_SIL_PREFIX (const xmlChar *)"y_"

/* Min and max int */
#define NCX_MIN_INT   INT_MIN
#define NCX_MAX_INT   INT_MAX

#define NCX_MIN_INT8    -128
#define NCX_MAX_INT8    127

#define NCX_MIN_INT16   -32768
#define NCX_MAX_INT16   32767

/* Min and max long */
#define NCX_MAX_LONG   9223372036854775807LL
#define NCX_MIN_LONG   (-NCX_MAX_LONG - 1LL)


/* Min and max uint */
#define NCX_MIN_UINT   0
#define NCX_MAX_UINT   UINT_MAX

#define NCX_MAX_UINT8  255
#define NCX_MAX_UINT16 65535

/* Min and max uint64 */
#define NCX_MIN_ULONG   0
#define NCX_MAX_ULONG   18446744073709551615ULL


/* Min and max float */
#define NCX_MIN_FLOAT   "-inf"
#define NCX_MAX_FLOAT   "inf"

/* Min and max double */
#define NCX_MIN_DOUBLE  "-inf"
#define NCX_MAX_DOUBLE   "inf"


/* NETCONF built-in config names */
#define NCX_CFG_RUNNING      (const xmlChar *)"running"
#define NCX_CFG_CANDIDATE    (const xmlChar *)"candidate"
#define NCX_CFG_STARTUP      (const xmlChar *)"startup"

#define NCX_NUM_CFGS         3

/* NCX Extension configuration names */
#define NCX_CFG_ROLLBACK     (const xmlChar *)"rollback"


/* NCX and NETCONF element and attribute names
 *
 * NETCONF common parameter names 
 * NETCONF built-in error-info element names 
 * name of Xpath index for position-only table index 
 * NCX token and element names 
 * NCX token names of the builtin types used in the <syntax> clause 
 *
 */

#define NCX_EL_ACCESS_RC       (const xmlChar *)"read-create"
#define NCX_EL_ACCESS_RO       (const xmlChar *)"read-only"
#define NCX_EL_ACCESS_RW       (const xmlChar *)"read-write"
#define NCX_EL_AUDIT_LOG       (const xmlChar *)"audit-log"
#define NCX_EL_AUDIT_LOG_APPEND (const xmlChar *)"audit-log-append"
#define NCX_AUGHOOK_START      (const xmlChar *)"__"
#define NCX_AUGHOOK_END        (const xmlChar *)".A__"

#define NCX_EL_ABSTRACT        (const xmlChar *)"abstract"
#define NCX_EL_ACCESS_CONTROL  (const xmlChar *)"access-control"
#define NCX_EL_ADDRESS         (const xmlChar *)"address"
#define NCX_EL_ALT_NAME        (const xmlChar *)"alt-name"
#define NCX_EL_ANY             (const xmlChar *)"any"
#define NCX_EL_ANYXML          (const xmlChar *)"anyxml"
#define NCX_EL_APPINFO         (const xmlChar *)"appinfo"
#define NCX_EL_APPLICATION     (const xmlChar *)"application"
#define NCX_EL_BAD_ATTRIBUTE   (const xmlChar *)"bad-attribute"
#define NCX_EL_BAD_ELEMENT     (const xmlChar *)"bad-element"
#define NCX_EL_BAD_NAMESPACE   (const xmlChar *)"bad-namespace"
#define NCX_EL_BAD_VALUE       (const xmlChar *)"bad-value"
#define NCX_EL_BINARY          (const xmlChar *)"binary"
#define NCX_EL_BITS            (const xmlChar *)"bits"
#define NCX_EL_BOOLEAN         (const xmlChar *)"boolean"
#define NCX_EL_BRIEF           (const xmlChar *)"brief"
#define NCX_EL_BYTE            (const xmlChar *)"byte"
#define NCX_EL_C               (const xmlChar *)"c"
#define NCX_EL_CPP_TEST        (const xmlChar *)"cpp_test"
#define NCX_EL_CANCEL          (const xmlChar *)"cancel"
#define NCX_EL_CANCEL_COMMIT   (const xmlChar *)"cancel-commit"
#define NCX_EL_CANDIDATE       (const xmlChar *)"candidate"
#define NCX_EL_CAPABILITIES    (const xmlChar *)"capabilities"
#define NCX_EL_CAPABILITY      (const xmlChar *)"capability"
#define NCX_EL_CASE            (const xmlChar *)"case"
#define NCX_EL_CASE_NAME       (const xmlChar *)"case-name"
#define NCX_EL_CHOICE          (const xmlChar *)"choice"
#define NCX_EL_CHOICE_NAME     (const xmlChar *)"choice-name"
#define NCX_EL_CLASS           (const xmlChar *)"class"
#define NCX_EL_CLI             (const xmlChar *)"cli"
#define NCX_EL_CLOSE_SESSION   (const xmlChar *)"close-session"
#define NCX_EL_COMMIT          (const xmlChar *)"commit"
#define NCX_EL_COMPLETE        (const xmlChar *)"complete"
#define NCX_EL_CONDITION       (const xmlChar *)"condition"
#define NCX_EL_CONFIG          (const xmlChar *)"config"
#define NCX_EL_CONFIRMED       (const xmlChar *)"confirmed"
#define NCX_EL_CONFIRMED_COMMIT  (const xmlChar *)"confirmed-commit"
#define NCX_EL_CONFIRM_TIMEOUT (const xmlChar *)"confirm-timeout"
#define NCX_EL_CONTAINER       (const xmlChar *)"container"
#define NCX_EL_CONTACT_INFO    (const xmlChar *)"contact-info"
#define NCX_EL_CONTINUE_ON_ERROR (const xmlChar *)"continue-on-error"
#define NCX_EL_COPY            (const xmlChar *)"copy"
#define NCX_EL_COPYRIGHT       (const xmlChar *)"copyright"
#define NCX_EL_COPY_CONFIG     (const xmlChar *)"copy-config"
#define NCX_EL_CREATE          (const xmlChar *)"create"
#define NCX_EL_CURRENT         (const xmlChar *)"current"
#define NCX_EL_DATA            (const xmlChar *)"data"
#define NCX_EL_DATAPATH        (const xmlChar *)"datapath"
#define NCX_EL_DATA_CLASS      (const xmlChar *)"data-class"
#define NCX_EL_DEBUG           (const xmlChar *)"debug"
#define NCX_EL_DECIMAL64       (const xmlChar *)"decimal64"
#define NCX_EL_DEF             (const xmlChar *)"def"
#define NCX_EL_DEFAULT         (const xmlChar *)"default"
#define NCX_EL_DEFAULT_OPERATION (const xmlChar *)"default-operation"
#define NCX_EL_DEFAULT_PARM    (const xmlChar *)"default-parm"
#define NCX_EL_DEFAULT_PARM_EQUALS_OK (const xmlChar *)"default-parm-equals-ok"
#define NCX_EL_DEFAULT_STYLE   (const xmlChar *)"default-style"
#define NCX_EL_DEFINITIONS     (const xmlChar *)"definitions"
#define NCX_EL_DEFOP           (const xmlChar *)"default-operation"
#define NCX_EL_DELETE          (const xmlChar *)"delete"
#define NCX_EL_DELETE_CONFIG   (const xmlChar *)"delete-config"
#define NCX_EL_DEPRECATED      (const xmlChar *)"deprecated"
#define NCX_EL_DESCRIPTION     (const xmlChar *)"description"
#define NCX_EL_DEVIATION       (const xmlChar *)"deviation"
#define NCX_EL_DISABLED        (const xmlChar *)"disabled"
#define NCX_EL_DISCARD_CHANGES (const xmlChar *)"discard-changes"
#define NCX_EL_DOUBLE          (const xmlChar *)"double"
#define NCX_EL_DYNAMIC         (const xmlChar *)"dynamic"
#define NCX_EL_EDIT_CONFIG     (const xmlChar *)"edit-config"
#define NCX_EL_EMPTY           (const xmlChar *)"empty"
#define NCX_EL_ENFORCING       (const xmlChar *)"enforcing"
#define NCX_EL_ENUM            (const xmlChar *)"enum"
#define NCX_EL_ENUMERATION     (const xmlChar *)"enumeration"
#define NCX_EL_ERROR           (const xmlChar *)"error"
#define NCX_EL_ERROR_APP_TAG   (const xmlChar *)"error-app-tag"
#define NCX_EL_ERROR_INFO      (const xmlChar *)"error-info"
#define NCX_EL_ERROR_LEVEL     (const xmlChar *)"error-level"
#define NCX_EL_ERROR_NUMBER    (const xmlChar *)"error-number"
#define NCX_EL_ERROR_OPTION    (const xmlChar *)"error-option"
#define NCX_EL_ERROR_MESSAGE   (const xmlChar *)"error-message"
#define NCX_EL_ERROR_PATH      (const xmlChar *)"error-path"
#define NCX_EL_ERROR_SEVERITY  (const xmlChar *)"error-severity"
#define NCX_EL_ERROR_TAG       (const xmlChar *)"error-tag"
#define NCX_EL_ERROR_TYPE      (const xmlChar *)"error-type"
#define NCX_EL_EVENTLOG_SIZE   (const xmlChar *)"eventlog-size"
#define NCX_EL_EVENTTIME       (const xmlChar *)"eventTime"
#define NCX_EL_EXACT           (const xmlChar *)"exact"
#define NCX_EL_EXACT_NOCASE    (const xmlChar *)"exact-nocase"
#define NCX_EL_EXEC            (const xmlChar *)"exec"
#define NCX_EL_EXPLICIT        (const xmlChar *)"explicit"
#define NCX_EL_EXTEND          (const xmlChar *)"extend"
#define NCX_EL_EXTERN          (const xmlChar *)"extern"
#define NCX_EL_FALSE           (const xmlChar *)"false"
#define NCX_EL_FEATURE_CODE_DEFAULT \
    (const xmlChar *)"feature-code-default"
#define NCX_EL_FEATURE_ENABLE_DEFAULT \
    (const xmlChar *)"feature-enable-default"
#define NCX_EL_FEATURE_STATIC (const xmlChar *)"feature-static"
#define NCX_EL_FEATURE_DYNAMIC (const xmlChar *)"feature-dynamic"
#define NCX_EL_FEATURE_ENABLE (const xmlChar *)"feature-enable"
#define NCX_EL_FEATURE_DISABLE (const xmlChar *)"feature-disable"
#define NCX_EL_FILTER          (const xmlChar *)"filter"
#define NCX_EL_FIRST           (const xmlChar *)"first"
#define NCX_EL_FIRST_NOCASE    (const xmlChar *)"first-nocase"
#define NCX_EL_FLAG            (const xmlChar *)"flag"
#define NCX_EL_FLOAT           (const xmlChar *)"float"
#define NCX_EL_FLOAT64         (const xmlChar *)"float64"
#define NCX_EL_FORMAT          (const xmlChar *)"format"
#define NCX_EL_FULL            (const xmlChar *)"full"
#define NCX_EL_GET             (const xmlChar *)"get"
#define NCX_EL_GET_CONFIG      (const xmlChar *)"get-config"
#define NCX_EL_GET_SCHEMA      (const xmlChar *)"get-schema"
#define NCX_EL_GROUP_ID        (const xmlChar *)"group-id"
#define NCX_EL_H               (const xmlChar *)"h"
#define NCX_EL_HEADER          (const xmlChar *)"header"
#define NCX_EL_HELLO           (const xmlChar *)"hello"
#define NCX_EL_HELLO_TIMEOUT   (const xmlChar *)"hello-timeout"
#define NCX_EL_HELP            (const xmlChar *)"help"
#define NCX_EL_HIDDEN          (const xmlChar *)"hidden"
#define NCX_EL_HOME            (const xmlChar *)"home"
#define NCX_EL_HTML            (const xmlChar *)"html"
#define NCX_EL_IDENTIFIER      (const xmlChar *)"identifier"
#define NCX_EL_IDENTITYREF     (const xmlChar *)"identityref"
#define NCX_EL_IDLE_TIMEOUT    (const xmlChar *)"idle-timeout"
#define NCX_EL_ILLEGAL         (const xmlChar *)"illegal"
#define NCX_EL_IMPORT          (const xmlChar *)"import"
#define NCX_EL_IMPORTS         (const xmlChar *)"imports"
#define NCX_EL_INCLUDE         (const xmlChar *)"include"
#define NCX_EL_INDENT          (const xmlChar *)"indent"
#define NCX_EL_INFO            (const xmlChar *)"info"
#define NCX_EL_INPUT           (const xmlChar *)"input"
#define NCX_EL_INSTANCE_IDENTIFIER \
                               (const xmlChar *)"instance-identifier"
#define NCX_EL_INT             (const xmlChar *)"int"
#define NCX_EL_INT8            (const xmlChar *)"int8"
#define NCX_EL_INT16           (const xmlChar *)"int16"
#define NCX_EL_INT32           (const xmlChar *)"int32"
#define NCX_EL_INT64           (const xmlChar *)"int64"
#define NCX_EL_JSON            (const xmlChar *)"json"
#define NCX_EL_KEY             (const xmlChar *)"key"
#define NCX_EL_KILL_SESSION    (const xmlChar *)"kill-session"
#define NCX_EL_LANG            (const xmlChar *)"xml:lang"
#define NCX_EL_LAST_MODIFIED   (const xmlChar *)"last-modified"
#define NCX_EL_LEAFREF         (const xmlChar *)"leafref"
#define NCX_EL_LINESIZE        (const xmlChar *)"linesize"
#define NCX_EL_LIST            (const xmlChar *)"list"
#define NCX_EL_TCP_DIRECT_ADDRESS (const xmlChar *)"tcp-direct-address"
#define NCX_EL_TCP_DIRECT_PORT (const xmlChar *)"tcp-direct-port"
#define NCX_EL_NCXSERVER_SOCKNAME (const xmlChar *)"ncxserver-sockname"
#define NCX_EL_LOAD            (const xmlChar *)"load"
#define NCX_EL_LOAD_CONFIG     (const xmlChar *)"load-config"
#define NCX_EL_LOCK            (const xmlChar *)"lock"
#define NCX_EL_LOCK_SOURCE     (const xmlChar *)"lock-source"
#define NCX_EL_LOG             (const xmlChar *)"log"
#define NCX_EL_LOGAPPEND       (const xmlChar *)"log-append"
#define NCX_EL_LOGLEVEL        (const xmlChar *)"log-level"
#define NCX_EL_LONG            (const xmlChar *)"long"
#define NCX_EL_MAGIC           (const xmlChar *)"magic"
#define NCX_EL_MAX_ACCESS      (const xmlChar *)"max-access"
#define NCX_EL_MAX_BURST       (const xmlChar *)"max-burst"
#define NCX_EL_MERGE           (const xmlChar *)"merge"
#define NCX_EL_MESSAGE_ID      (const xmlChar *)"message-id"
#define NCX_EL_METADATA        (const xmlChar *)"metadata"
#define NCX_EL_MISSING_CHOICE  (const xmlChar *)"missing-choice"
#define NCX_EL_MODPATH         (const xmlChar *)"modpath"
#define NCX_EL_MODULE          (const xmlChar *)"module"
#define NCX_EL_MODULES         (const xmlChar *)"modules"
#define NCX_EL_MOD_REVISION    (const xmlChar *)"mod-revision"
#define NCX_EL_MONITOR         (const xmlChar *)"monitor"
#define NCX_EL_NAME            (const xmlChar *)"name"
#define NCX_EL_NCX             (const xmlChar *)"ncx"
#define NCX_EL_NCXCONNECT      (const xmlChar *)"ncx-connect"
#define NCX_EL_NAMESPACE       (const xmlChar *)"namespace"
#define NCX_EL_NETCONF         (const xmlChar *)"netconf"
#define NCX_EL_NETCONF10       (const xmlChar *)"netconf1.0"
#define NCX_EL_NETCONF11       (const xmlChar *)"netconf1.1"
#define NCX_EL_NO              (const xmlChar *)"no"
#define NCX_EL_NODEFAULT       (const xmlChar *)"no default"
#define NCX_EL_NODUPLICATES    (const xmlChar *)"no-duplicates"
#define NCX_EL_NONE            (const xmlChar *)"none"
#define NCX_EL_NON_UNIQUE      (const xmlChar *)"non-unique"
#define NCX_EL_NON_ADVERTISED_MODULE (const xmlChar *)"non-advertised-module"
#define NCX_EL_NO_OP           (const xmlChar *)"no-op"
#define NCX_EL_NOOP_ELEMENT    (const xmlChar *)"noop-element"
#define NCX_EL_NOTIFICATION    (const xmlChar *)"notification"
#define NCX_EL_NOT_USED        (const xmlChar *)"not-used"
#define NCX_EL_NOT_SET         (const xmlChar *)"not-set"
#define NCX_EL_NULL            (const xmlChar *)"null"
#define NCX_EL_OBJECT          (const xmlChar *)"object"
#define NCX_EL_OBJECTS         (const xmlChar *)"objects"
#define NCX_EL_OBSOLETE        (const xmlChar *)"obsolete"
#define NCX_EL_OFF             (const xmlChar *)"off"
#define NCX_EL_OK              (const xmlChar *)"ok"
#define NCX_EL_OK_ELEMENT      (const xmlChar *)"ok-element"
#define NCX_EL_ONE             (const xmlChar *)"one"
#define NCX_EL_ONE_NOCASE      (const xmlChar *)"one-nocase"
#define NCX_EL_ORDER           (const xmlChar *)"order"
#define NCX_EL_ORDER_L         (const xmlChar *)"loose"
#define NCX_EL_ORDER_S         (const xmlChar *)"strict"
#define NCX_EL_OTHER           (const xmlChar *)"other"
#define NCX_EL_OUTPUT          (const xmlChar *)"output"
#define NCX_EL_OWNER           (const xmlChar *)"owner"
#define NCX_EL_PARM            (const xmlChar *)"parm"
#define NCX_EL_PARMSET         (const xmlChar *)"parmset"
#define NCX_EL_PARMS           (const xmlChar *)"parms"
#define NCX_EL_PASSWORD        (const xmlChar *)"password"
#define NCX_EL_PATH            (const xmlChar *)"path"
#define NCX_EL_PATTERN         (const xmlChar *)"pattern"
#define NCX_EL_PERMISSIVE      (const xmlChar *)"permissive"
#define NCX_EL_PERSIST         (const xmlChar *)"persist"
#define NCX_EL_PERSIST_ID      (const xmlChar *)"persist-id"
#define NCX_EL_PLAIN           (const xmlChar *)"plain"
#define NCX_EL_PORT            (const xmlChar *)"port"
#define NCX_EL_POS             (const xmlChar *)"pos"
#define NCX_EL_POSITION        (const xmlChar *)"position"
#define NCX_EL_PREFIX          (const xmlChar *)"prefix"
#define NCX_EL_PROTOCOL        (const xmlChar *)"protocol"
#define NCX_EL_PROTOCOLS       (const xmlChar *)"protocols"
#define NCX_EL_QNAME           (const xmlChar *)"qname"
#define NCX_EL_REMOVE          (const xmlChar *)"remove"
#define NCX_EL_REPLACE         (const xmlChar *)"replace"
#define NCX_EL_REPORT_ALL      (const xmlChar *)"report-all"
#define NCX_EL_REPORT_ALL_TAGGED (const xmlChar *)"report-all-tagged"
#define NCX_EL_RESTART         (const xmlChar *)"restart"
#define NCX_EL_REVISION        (const xmlChar *)"revision"
#define NCX_EL_REVISION_HISTORY (const xmlChar *)"revision-history"
#define NCX_EL_ROLLBACK_ON_ERROR (const xmlChar *)"rollback-on-error"
#define NCX_EL_ROOT            (const xmlChar *)"root"
#define NCX_EL_RPC             (const xmlChar *)"rpc"
#define NCX_EL_RPC_ERROR       (const xmlChar *)"rpc-error"
#define NCX_EL_RPC_OUTPUT      (const xmlChar *)"rpc-output"
#define NCX_EL_RPC_REPLY       (const xmlChar *)"rpc-reply"
#define NCX_EL_RPC_TYPE        (const xmlChar *)"rpc-type"
#define NCX_EL_RUNNING         (const xmlChar *)"running"
#define NCX_EL_RUNPATH         (const xmlChar *)"runpath"
#define NCX_EL_SCHEMA_INSTANCE (const xmlChar *)"schema-instance"
#define NCX_EL_SCRIPT          (const xmlChar *)"script"
#define NCX_EL_SECURE          (const xmlChar *)"secure"
#define NCX_EL_SELECT          (const xmlChar *)"select"
#define NCX_EL_SEQUENCE_ID     (const xmlChar *)"sequence-id"
#define NCX_EL_SERVER          (const xmlChar *)"server"
#define NCX_EL_SESSION_ID      (const xmlChar *)"session-id"
#define NCX_EL_SET             (const xmlChar *)"set"
#define NCX_EL_SHORT           (const xmlChar *)"short"
#define NCX_EL_SHOW_ERRORS     (const xmlChar *)"show-errors"
#define NCX_EL_SHUTDOWN        (const xmlChar *)"shutdown"
#define NCX_EL_SIL_DELETE_CHILDREN_FIRST (const xmlChar *)\
    "sil-delete-children-first"
#define NCX_EL_SLIST           (const xmlChar *)"slist"
#define NCX_EL_SOURCE          (const xmlChar *)"source"
#define NCX_EL_SQL             (const xmlChar *)"sql"
#define NCX_EL_SQLDB           (const xmlChar *)"sqldb"
#define NCX_EL_START           (const xmlChar *)"start"
#define NCX_EL_STARTUP         (const xmlChar *)"startup"
#define NCX_EL_STATE           (const xmlChar *)"state"
#define NCX_EL_STATIC          (const xmlChar *)"static"
#define NCX_EL_STATUS          (const xmlChar *)"status"
#define NCX_EL_STOP_ON_ERROR   (const xmlChar *)"stop-on-error"
#define NCX_EL_STRING          (const xmlChar *)"string"
#define NCX_EL_STRUCT          (const xmlChar *)"struct"
#define NCX_EL_SUBDIRS         (const xmlChar *)"subdirs"
#define NCX_EL_SUBMODULE       (const xmlChar *)"submodule"
#define NCX_EL_SUBTREE         (const xmlChar *)"subtree"
#define NCX_EL_SUPERUSER       (const xmlChar *)"superuser"
#define NCX_EL_SYNTAX          (const xmlChar *)"syntax"
#define NCX_EL_SYSTEM_SORTED   (const xmlChar *)"system-sorted"
#define NCX_EL_TABLE           (const xmlChar *)"table"
#define NCX_EL_TARGET          (const xmlChar *)"target"
#define NCX_EL_TESTONLY        (const xmlChar *)"test-only"
#define NCX_EL_TEST_OPTION     (const xmlChar *)"test-option"
#define NCX_EL_TESTTHENSET     (const xmlChar *)"test-then-set"
#define NCX_EL_TEXT            (const xmlChar *)"text"
#define NCX_EL_TG2             (const xmlChar *)"tg2"
#define NCX_EL_TIMEOUT         (const xmlChar *)"timeout"
#define NCX_EL_TXT             (const xmlChar *)"txt"
#define NCX_EL_TRANSPORT       (const xmlChar *)"transport"
#define NCX_EL_TRIM            (const xmlChar *)"trim"
#define NCX_EL_TRUE            (const xmlChar *)"true"
#define NCX_EL_TYPE            (const xmlChar *)"type"
#define NCX_EL_UC              (const xmlChar *)"uc"
#define NCX_EL_UH              (const xmlChar *)"uh"
#define NCX_EL_UINT8           (const xmlChar *)"uint8"
#define NCX_EL_UINT16          (const xmlChar *)"uint16"
#define NCX_EL_UINT32          (const xmlChar *)"uint32"
#define NCX_EL_UINT64          (const xmlChar *)"uint64"
#define NCX_EL_UNION           (const xmlChar *)"union"
#define NCX_EL_UNITS           (const xmlChar *)"units"
#define NCX_EL_UNLOCK          (const xmlChar *)"unlock"
#define NCX_EL_UNSIGNED_BYTE   (const xmlChar *)"unsignedByte"
#define NCX_EL_UNSIGNED_INT    (const xmlChar *)"unsignedInt"
#define NCX_EL_UNSIGNED_LONG   (const xmlChar *)"unsignedLong"
#define NCX_EL_UNSIGNED_SHORT  (const xmlChar *)"unsignedShort"
#define NCX_EL_ULONG           (const xmlChar *)"ulong"
#define NCX_EL_UPDATE          (const xmlChar *)"update"
#define NCX_EL_URL             (const xmlChar *)"url"
#define NCX_EL_URLTARGET       (const xmlChar *)"urltarget"
#define NCX_EL_USAGE           (const xmlChar *)"usage"
#define NCX_EL_USAGE_C         (const xmlChar *)"conditional"
#define NCX_EL_USAGE_M         (const xmlChar *)"mandatory"
#define NCX_EL_USAGE_O         (const xmlChar *)"optional"
#define NCX_EL_USER            (const xmlChar *)"user"
#define NCX_EL_USER_WRITE      (const xmlChar *)"user-write"
#define NCX_EL_USEXMLORDER     (const xmlChar *)"usexmlorder"
#define NCX_EL_USTRING         (const xmlChar *)"ustring"
#define NCX_EL_VALIDATE        (const xmlChar *)"validate"
#define NCX_EL_VALUE           (const xmlChar *)"value"
#define NCX_EL_VAR             (const xmlChar *)"var"
#define NCX_EL_VARS            (const xmlChar *)"vars"
#define NCX_EL_VERSION         (const xmlChar *)"version"
#define NCX_EL_VERY_SECURE     (const xmlChar *)"very-secure"
#define NCX_EL_WARNING         (const xmlChar *)"warning"
#define NCX_EL_WARN_IDLEN      (const xmlChar *)"warn-idlen"
#define NCX_EL_WARN_LINELEN    (const xmlChar *)"warn-linelen"
#define NCX_EL_WARN_OFF        (const xmlChar *)"warn-off"
#define NCX_EL_WHEN            (const xmlChar *)"when"
#define NCX_EL_WITH_DEFAULTS   (const xmlChar *)"with-defaults"
#define NCX_EL_WITH_METADATA   (const xmlChar *)"with-metadata"
#define NCX_EL_WITH_STARTUP    (const xmlChar *)"with-startup"
#define NCX_EL_WITH_URL        (const xmlChar *)"with-url"
#define NCX_EL_WITH_VALIDATE   (const xmlChar *)"with-validate"
#define NCX_EL_WRITABLE_RUNNING (const xmlChar *)"writable-running"
#define NCX_EL_XCONTAINER      (const xmlChar *)"xcontainer"
#define NCX_EL_XLIST           (const xmlChar *)"xlist"
#define NCX_EL_XML             (const xmlChar *)"xml"
#define NCX_EL_XML_NONS        (const xmlChar *)"xml-nons"
#define NCX_EL_XPATH           (const xmlChar *)"xpath"
#define NCX_EL_XSD             (const xmlChar *)"xsd"
#define NCX_EL_XSDLIST         (const xmlChar *)"xsdlist"
#define NCX_EL_YANG            (const xmlChar *)"yang"
#define NCX_EL_YC              (const xmlChar *)"yc"
#define NCX_EL_YES             (const xmlChar *)"yes"
#define NCX_EL_YH              (const xmlChar *)"yh"
#define NCX_EL_YIN             (const xmlChar *)"yin"
#define NCX_EL_YUMA_HOME       (const xmlChar *)"yuma-home"
#define NCX_EL_MAX_SESSIONS    (const xmlChar *)"max-sessions"

/* bit definitions for ncx_lstr_t flags field */
#define NCX_FL_RANGE_ERR   bit0
#define NCX_FL_VALUE_ERR   bit1

/* bit definitions for NETCONF session protocol versions */
#define NCX_FL_PROTO_NETCONF10  bit0
#define NCX_FL_PROTO_NETCONF11  bit1


/* textual parameter tags for various NCX functions
 * that use boolean parameters
 */
#define NCX_SAVESTR    TRUE
#define NCX_NO_SAVESTR FALSE

#define NCX_LMEM_ENUM(L)   ((L)->val.enu)
#define NCX_LMEM_STR(L)    ((L)->val.str)
#define NCX_LMEM_STRVAL(L) ((L)->val.str)
#define NCX_LMEM_NUM(L)    ((L)->val.num)

/* constants for isglobal function parameter */
#define ISGLOBAL  TRUE
#define ISLOCAL   FALSE

/* bad-data enumeration values */
#define E_BAD_DATA_IGNORE (const xmlChar *)"ignore"
#define E_BAD_DATA_WARN   (const xmlChar *)"warn"
#define E_BAD_DATA_CHECK  (const xmlChar *)"check"
#define E_BAD_DATA_ERROR  (const xmlChar *)"error"


#define COPYRIGHT_STRING_LINE0 "Copyright (c) 2008-2012, Andy Bierman, All Rights Reserved.\n"
#define COPYRIGHT_STRING_LINE1 "Copyright (c) 2013-2017, Vladimir Vassilev, All Rights Reserved.\n"

#define COPYRIGHT_STRING COPYRIGHT_STRING_LINE0 COPYRIGHT_STRING_LINE1

#define Y_PREFIX         (const xmlChar *)"y_"
#define U_PREFIX         (const xmlChar *)"u_"
#define EDIT_SUFFIX      (const xmlChar *)"_edit"
#define GET_SUFFIX       (const xmlChar *)"_get"
#define MRO_SUFFIX       (const xmlChar *)"_mro"
#define INIT_SUFFIX      (const xmlChar *)"_init"
#define INIT2_SUFFIX     (const xmlChar *)"_init2"
#define CLEANUP_SUFFIX   (const xmlChar *)"_cleanup"

#ifdef __cplusplus
}  /* end extern 'C' */
#endif

#endif	    /* _H_ncxconst */