X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=bacula%2Fsrc%2Flib%2Flex.h;h=115a60ac7f04384ad7879642f8b767bb7d0d2bb5;hb=f5e7d95ce741ea5c296d605b2f411805a65462d6;hp=a5f9c394134774115f0827e7c36c617691eacfc0;hpb=145eb7ebe4a1c8acfc882d1b88251fc4c7fa2d1f;p=bacula%2Fbacula diff --git a/bacula/src/lib/lex.h b/bacula/src/lib/lex.h index a5f9c39413..115a60ac7f 100644 --- a/bacula/src/lib/lex.h +++ b/bacula/src/lib/lex.h @@ -6,21 +6,21 @@ The main author of Bacula is Kern Sibbald, with contributions from many others, a complete list can be found in the file AUTHORS. This program is Free Software; you can redistribute it and/or - modify it under the terms of version two of the GNU General Public - License as published by the Free Software Foundation plus additions - that are listed in the file LICENSE. + modify it under the terms of version three of the GNU Affero General Public + License as published by the Free Software Foundation and included + in the file LICENSE. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. - You should have received a copy of the GNU General Public License + You should have received a copy of the GNU Affero General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - Bacula® is a registered trademark of John Walker. + Bacula® is a registered trademark of Kern Sibbald. The licensor of Bacula is the Free Software Foundation Europe (FSFE), Fiduciary Program, Sumatrastrasse 25, 8006 Zürich, Switzerland, email:ftf@fsfeurope.org. @@ -73,6 +73,8 @@ #define T_INT64 117 /* 64 bit integer */ #define T_NAME 118 /* name max 128 chars */ #define T_STRING 119 /* string */ +#define T_PINT64_RANGE 120 /* positive integer range */ +#define T_PINT64 121 /* positive integer range */ #define T_ALL 0 /* no expectations */ @@ -85,6 +87,7 @@ enum lex_state { lex_identifier, lex_string, lex_quoted_string, + lex_include_quoted_string, lex_include, lex_utf8_bom, /* we are parsing out a utf8 byte order mark */ lex_utf16_le_bom /* we are parsing out a utf-16 (little endian) byte order mark */ @@ -93,6 +96,7 @@ enum lex_state { /* Lex scan options */ #define LOPT_NO_IDENT 0x1 /* No Identifiers -- use string */ #define LOPT_STRING 0x2 /* Force scan for string */ +#define LOPT_NO_EXTERN 0x4 /* Don't follow @ command */ class BPIPE; /* forward reference */ @@ -115,6 +119,8 @@ typedef struct s_lex_context { uint32_t pint32_val2; int32_t int32_val; int64_t int64_val; + uint64_t pint64_val; + uint64_t pint64_val2; void (*scan_error)(const char *file, int line, struct s_lex_context *lc, const char *msg, ...); int err_type; /* message level for scan_error (M_..) */ void *caller_ctx; /* caller private data */