Remove dates and list of authors from most file headings.
After manual edits, regenerate lexer.l and lexer.c.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
This file, INSTALL, contains installation instructions and other
details for userv.
This file, INSTALL, contains installation instructions and other
details for userv.
-userv is
-Copyright 1996-2017 Ian Jackson <ian@davenant.greenend.org.uk>.
-Copyright 2000 Ben Harris <bjh21@cam.ac.uk>
-Copyright 2016-2017 Peter Benie <pjb1008@cam.ac.uk>
+userv is copyright Ian Jackson and other contributors.
+See README for full authorship information.
userv is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free
userv is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free
-# userv is
-# Copyright 1996-2017 Ian Jackson <ian@davenant.greenend.org.uk>.
-# Copyright 2000 Ben Harris <bjh21@cam.ac.uk>
-# Copyright 2016-2017 Peter Benie <pjb1008@cam.ac.uk>
+# userv is copyright Ian Jackson and other contributors.
+# See README for full authorship information.
#
# This is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
#
# This is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
-# userv is
-# Copyright 1996-2017 Ian Jackson <ian@davenant.greenend.org.uk>.
-# Copyright 2000 Ben Harris <bjh21@cam.ac.uk>
-# Copyright 2016-2017 Peter Benie <pjb1008@cam.ac.uk>
+# userv is copyright Ian Jackson and other contributors.
+# See README for full authorship information.
#
# This is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
#
# This is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
dnl userv - language.i4
dnl definition of the configuration language, used for tokens.h and lexer.l
dnl
dnl userv - language.i4
dnl definition of the configuration language, used for tokens.h and lexer.l
dnl
-dnl userv is
-dnl Copyright 1996-2017 Ian Jackson <ian@davenant.greenend.org.uk>.
-dnl Copyright 2000 Ben Harris <bjh21@cam.ac.uk>
-dnl Copyright 2016-2017 Peter Benie <pjb1008@cam.ac.uk>
+dnl userv is copyright Ian Jackson and other contributors.
+dnl See README for full authorship information.
dnl
dnl This is free software; you can redistribute it and/or modify it
dnl under the terms of the GNU General Public License as published by
dnl
dnl This is free software; you can redistribute it and/or modify it
dnl under the terms of the GNU General Public License as published by
#define YY_RESTORE_YY_MORE_OFFSET
char *yytext;
#line 1 "lexer.l"
#define YY_RESTORE_YY_MORE_OFFSET
char *yytext;
#line 1 "lexer.l"
-/* userv is
- * Copyright 1996-2017 Ian Jackson <ian@davenant.greenend.org.uk>.
- * Copyright 2000 Ben Harris <bjh21@cam.ac.uk>
- * Copyright 2016-2017 Peter Benie <pjb1008@cam.ac.uk>
+/*
+ * userv is copyright Ian Jackson and other contributors.
+ * See README for full authorship information.
*
* This is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by
*
* This is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by
* You should have received a copy of the GNU General Public License
* along with userv; if not, see <http://www.gnu.org/licenses/>.
*/
* You should have received a copy of the GNU General Public License
* along with userv; if not, see <http://www.gnu.org/licenses/>.
*/
while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */
{
while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */
{
{ lr_dir= df_reject; return tokv_word_reject; }
YY_BREAK
case 2:
YY_RULE_SETUP
{ lr_dir= df_reject; return tokv_word_reject; }
YY_BREAK
case 2:
YY_RULE_SETUP
{ lr_dir= df_executefromdirectory; return tokv_word_executefromdirectory; }
YY_BREAK
case 3:
YY_RULE_SETUP
{ lr_dir= df_executefromdirectory; return tokv_word_executefromdirectory; }
YY_BREAK
case 3:
YY_RULE_SETUP
{ lr_dir= df_executefrompath; return tokv_word_executefrompath; }
YY_BREAK
case 4:
YY_RULE_SETUP
{ lr_dir= df_executefrompath; return tokv_word_executefrompath; }
YY_BREAK
case 4:
YY_RULE_SETUP
{ lr_dir= df_executebuiltin; return tokv_word_executebuiltin; }
YY_BREAK
case 5:
YY_RULE_SETUP
{ lr_dir= df_executebuiltin; return tokv_word_executebuiltin; }
YY_BREAK
case 5:
YY_RULE_SETUP
{ lr_dir= df_errorstostderr; return tokv_word_errorstostderr; }
YY_BREAK
case 6:
YY_RULE_SETUP
{ lr_dir= df_errorstostderr; return tokv_word_errorstostderr; }
YY_BREAK
case 6:
YY_RULE_SETUP
{ lr_dir= df_errorstosyslog; return tokv_word_errorstosyslog; }
YY_BREAK
case 7:
YY_RULE_SETUP
{ lr_dir= df_errorstosyslog; return tokv_word_errorstosyslog; }
YY_BREAK
case 7:
YY_RULE_SETUP
{ lr_dir= df_errorstofile; return tokv_word_errorstofile; }
YY_BREAK
case 8:
YY_RULE_SETUP
{ lr_dir= df_errorstofile; return tokv_word_errorstofile; }
YY_BREAK
case 8:
YY_RULE_SETUP
{ lr_dir= dfg_lookupquotemode; return tokv_word_includelookupquoteold; }
YY_BREAK
case 9:
YY_RULE_SETUP
{ lr_dir= dfg_lookupquotemode; return tokv_word_includelookupquoteold; }
YY_BREAK
case 9:
YY_RULE_SETUP
{ lr_dir= dfg_lookupquotemode; return tokv_word_includelookupquotenew; }
YY_BREAK
case 10:
YY_RULE_SETUP
{ lr_dir= dfg_lookupquotemode; return tokv_word_includelookupquotenew; }
YY_BREAK
case 10:
YY_RULE_SETUP
{ lr_dir= dfg_fdwant; lr_fdwant_readwrite=1; return tokv_word_requirefd; }
YY_BREAK
case 11:
YY_RULE_SETUP
{ lr_dir= dfg_fdwant; lr_fdwant_readwrite=1; return tokv_word_requirefd; }
YY_BREAK
case 11:
YY_RULE_SETUP
{ lr_dir= dfg_fdwant; lr_fdwant_readwrite=0; return tokv_word_allowfd; }
YY_BREAK
case 12:
YY_RULE_SETUP
{ lr_dir= dfg_fdwant; lr_fdwant_readwrite=0; return tokv_word_allowfd; }
YY_BREAK
case 12:
YY_RULE_SETUP
{ lr_dir= dfg_fdwant; lr_fdwant_readwrite=0; return tokv_word_nullfd; }
YY_BREAK
case 13:
YY_RULE_SETUP
{ lr_dir= dfg_fdwant; lr_fdwant_readwrite=0; return tokv_word_nullfd; }
YY_BREAK
case 13:
YY_RULE_SETUP
{ lr_dir= dfg_fdwant; lr_fdwant_readwrite=-1; return tokv_word_rejectfd; }
YY_BREAK
case 14:
YY_RULE_SETUP
{ lr_dir= dfg_fdwant; lr_fdwant_readwrite=-1; return tokv_word_rejectfd; }
YY_BREAK
case 14:
YY_RULE_SETUP
{ lr_dir= dfg_fdwant; lr_fdwant_readwrite=-1; return tokv_word_ignorefd; }
YY_BREAK
case 15:
YY_RULE_SETUP
{ lr_dir= dfg_fdwant; lr_fdwant_readwrite=-1; return tokv_word_ignorefd; }
YY_BREAK
case 15:
YY_RULE_SETUP
{ lr_dir= dfg_setflag; lr_flag= &setenvironment; lr_flagval= 1; return tokv_word_setenvironment; }
YY_BREAK
case 16:
YY_RULE_SETUP
{ lr_dir= dfg_setflag; lr_flag= &setenvironment; lr_flagval= 1; return tokv_word_setenvironment; }
YY_BREAK
case 16:
YY_RULE_SETUP
{ lr_dir= dfg_setflag; lr_flag= &setenvironment; lr_flagval= 0; return tokv_word_nosetenvironment; }
YY_BREAK
case 17:
YY_RULE_SETUP
{ lr_dir= dfg_setflag; lr_flag= &setenvironment; lr_flagval= 0; return tokv_word_nosetenvironment; }
YY_BREAK
case 17:
YY_RULE_SETUP
{ lr_dir= dfg_setflag; lr_flag= &suppressargs; lr_flagval= 1; return tokv_word_suppressargs; }
YY_BREAK
case 18:
YY_RULE_SETUP
{ lr_dir= dfg_setflag; lr_flag= &suppressargs; lr_flagval= 1; return tokv_word_suppressargs; }
YY_BREAK
case 18:
YY_RULE_SETUP
{ lr_dir= dfg_setflag; lr_flag= &suppressargs; lr_flagval= 0; return tokv_word_nosuppressargs; }
YY_BREAK
case 19:
YY_RULE_SETUP
{ lr_dir= dfg_setflag; lr_flag= &suppressargs; lr_flagval= 0; return tokv_word_nosuppressargs; }
YY_BREAK
case 19:
YY_RULE_SETUP
{ lr_dir= dfg_setflag; lr_flag= &disconnecthup; lr_flagval= 1; return tokv_word_disconnecthup; }
YY_BREAK
case 20:
YY_RULE_SETUP
{ lr_dir= dfg_setflag; lr_flag= &disconnecthup; lr_flagval= 1; return tokv_word_disconnecthup; }
YY_BREAK
case 20:
YY_RULE_SETUP
{ lr_dir= dfg_setflag; lr_flag= &disconnecthup; lr_flagval= 0; return tokv_word_nodisconnecthup; }
YY_BREAK
case 21:
YY_RULE_SETUP
{ lr_dir= dfg_setflag; lr_flag= &disconnecthup; lr_flagval= 0; return tokv_word_nodisconnecthup; }
YY_BREAK
case 21:
YY_RULE_SETUP
{ lr_dir= df_cd; return tokv_word_cd; }
YY_BREAK
case 22:
YY_RULE_SETUP
{ lr_dir= df_cd; return tokv_word_cd; }
YY_BREAK
case 22:
YY_RULE_SETUP
{ lr_dir= df_userrcfile; return tokv_word_userrcfile; }
YY_BREAK
case 23:
YY_RULE_SETUP
{ lr_dir= df_userrcfile; return tokv_word_userrcfile; }
YY_BREAK
case 23:
YY_RULE_SETUP
{ lr_dir= df_include; return tokv_word_include; }
YY_BREAK
case 24:
YY_RULE_SETUP
{ lr_dir= df_include; return tokv_word_include; }
YY_BREAK
case 24:
YY_RULE_SETUP
{ lr_dir= df_include; return tokv_word_includeifexist; }
YY_BREAK
case 25:
YY_RULE_SETUP
{ lr_dir= df_include; return tokv_word_includeifexist; }
YY_BREAK
case 25:
YY_RULE_SETUP
{ lr_dir= df_includelookup; return tokv_word_includelookup; }
YY_BREAK
case 26:
YY_RULE_SETUP
{ lr_dir= df_includelookup; return tokv_word_includelookup; }
YY_BREAK
case 26:
YY_RULE_SETUP
{ lr_dir= df_includelookup; return tokv_word_includelookupall; }
YY_BREAK
case 27:
YY_RULE_SETUP
{ lr_dir= df_includelookup; return tokv_word_includelookupall; }
YY_BREAK
case 27:
YY_RULE_SETUP
{ lr_dir= df_includedirectory; return tokv_word_includedirectory; }
YY_BREAK
case 28:
YY_RULE_SETUP
{ lr_dir= df_includedirectory; return tokv_word_includedirectory; }
YY_BREAK
case 28:
YY_RULE_SETUP
{ lr_dir= df_message; return tokv_word_message; }
YY_BREAK
case 29:
YY_RULE_SETUP
{ lr_dir= df_message; return tokv_word_message; }
YY_BREAK
case 29:
YY_RULE_SETUP
{ lr_dir= df_include; return tokv_word_includesysconfig; }
YY_BREAK
case 30:
YY_RULE_SETUP
{ lr_dir= df_include; return tokv_word_includesysconfig; }
YY_BREAK
case 30:
YY_RULE_SETUP
{ lr_dir= dfi_includeuserrcfile; return tokv_word_includeuserrcfile; }
YY_BREAK
case 31:
YY_RULE_SETUP
{ lr_dir= dfi_includeuserrcfile; return tokv_word_includeuserrcfile; }
YY_BREAK
case 31:
YY_RULE_SETUP
{ lr_dir= dfi_includeclientconfig; return tokv_word_includeclientconfig; }
YY_BREAK
case 32:
YY_RULE_SETUP
{ lr_dir= dfi_includeclientconfig; return tokv_word_includeclientconfig; }
YY_BREAK
case 32:
YY_RULE_SETUP
{ lr_dir= df_quit; return tokv_word_quit; }
YY_BREAK
case 33:
YY_RULE_SETUP
{ lr_dir= df_quit; return tokv_word_quit; }
YY_BREAK
case 33:
YY_RULE_SETUP
{ lr_dir= df_eof; return tokv_word_eof; }
YY_BREAK
case 34:
YY_RULE_SETUP
{ lr_dir= df_eof; return tokv_word_eof; }
YY_BREAK
case 34:
YY_RULE_SETUP
{ lr_dir= df_if; return tokv_word_if; }
YY_BREAK
case 35:
YY_RULE_SETUP
{ lr_dir= df_if; return tokv_word_if; }
YY_BREAK
case 35:
YY_RULE_SETUP
{ lr_dir= df_catchquit; return tokv_word_catchquit; }
YY_BREAK
case 36:
YY_RULE_SETUP
{ lr_dir= df_catchquit; return tokv_word_catchquit; }
YY_BREAK
case 36:
YY_RULE_SETUP
{ lr_dir= df_errorspush; return tokv_word_errorspush; }
YY_BREAK
case 37:
YY_RULE_SETUP
{ lr_dir= df_errorspush; return tokv_word_errorspush; }
YY_BREAK
case 37:
YY_RULE_SETUP
{ lr_controlend= tokv_word_if; return tokv_word_elif; }
YY_BREAK
case 38:
YY_RULE_SETUP
{ lr_controlend= tokv_word_if; return tokv_word_elif; }
YY_BREAK
case 38:
YY_RULE_SETUP
{ lr_controlend= tokv_word_if; return tokv_word_else; }
YY_BREAK
case 39:
YY_RULE_SETUP
{ lr_controlend= tokv_word_if; return tokv_word_else; }
YY_BREAK
case 39:
YY_RULE_SETUP
{ lr_controlend= tokv_word_if; return tokv_word_fi; }
YY_BREAK
case 40:
YY_RULE_SETUP
{ lr_controlend= tokv_word_if; return tokv_word_fi; }
YY_BREAK
case 40:
YY_RULE_SETUP
{ lr_controlend= tokv_word_catchquit; return tokv_word_hctac; }
YY_BREAK
case 41:
YY_RULE_SETUP
{ lr_controlend= tokv_word_catchquit; return tokv_word_hctac; }
YY_BREAK
case 41:
YY_RULE_SETUP
{ lr_controlend= tokv_word_errorspush; return tokv_word_srorre; }
YY_BREAK
case 42:
YY_RULE_SETUP
{ lr_controlend= tokv_word_errorspush; return tokv_word_srorre; }
YY_BREAK
case 42:
YY_RULE_SETUP
{ lr_parmcond= pcf_glob; return tokv_word_glob; }
YY_BREAK
case 43:
YY_RULE_SETUP
{ lr_parmcond= pcf_glob; return tokv_word_glob; }
YY_BREAK
case 43:
YY_RULE_SETUP
{ lr_parmcond= pcf_range; return tokv_word_range; }
YY_BREAK
case 44:
YY_RULE_SETUP
{ lr_parmcond= pcf_range; return tokv_word_range; }
YY_BREAK
case 44:
YY_RULE_SETUP
{ lr_parmcond= pcf_grep; return tokv_word_grep; }
YY_BREAK
case 45:
YY_RULE_SETUP
{ lr_parmcond= pcf_grep; return tokv_word_grep; }
YY_BREAK
case 45:
YY_RULE_SETUP
{ lr_bispa= bispa_none; lr_bisexec= bisexec_environment; return tokv_word_environment; }
YY_BREAK
case 46:
YY_RULE_SETUP
{ lr_bispa= bispa_none; lr_bisexec= bisexec_environment; return tokv_word_environment; }
YY_BREAK
case 46:
YY_RULE_SETUP
{ lr_bispa= bispa_parameter; lr_bisexec= bisexec_parameter; return tokv_word_parameter; }
YY_BREAK
case 47:
YY_RULE_SETUP
{ lr_bispa= bispa_parameter; lr_bisexec= bisexec_parameter; return tokv_word_parameter; }
YY_BREAK
case 47:
YY_RULE_SETUP
{ lr_bispa= bispa_none; lr_bisexec= bisexec_version; return tokv_word_version; }
YY_BREAK
case 48:
YY_RULE_SETUP
{ lr_bispa= bispa_none; lr_bisexec= bisexec_version; return tokv_word_version; }
YY_BREAK
case 48:
YY_RULE_SETUP
{ lr_bispa= bispa_none; lr_bisexec= bisexec_toplevel; return tokv_word_toplevel; }
YY_BREAK
case 49:
YY_RULE_SETUP
{ lr_bispa= bispa_none; lr_bisexec= bisexec_toplevel; return tokv_word_toplevel; }
YY_BREAK
case 49:
YY_RULE_SETUP
{ lr_bispa= bispa_none; lr_bisexec= bisexec_override; return tokv_word_override; }
YY_BREAK
case 50:
YY_RULE_SETUP
{ lr_bispa= bispa_none; lr_bisexec= bisexec_override; return tokv_word_override; }
YY_BREAK
case 50:
YY_RULE_SETUP
{ lr_bispa= bispa_none; lr_bisexec= bisexec_shutdown; return tokv_word_shutdown; }
YY_BREAK
case 51:
YY_RULE_SETUP
{ lr_bispa= bispa_none; lr_bisexec= bisexec_shutdown; return tokv_word_shutdown; }
YY_BREAK
case 51:
YY_RULE_SETUP
{ lr_bispa= bispa_none; lr_bisexec= bisexec_reset; lr_dir= df_reset; return tokv_word_reset; }
YY_BREAK
case 52:
YY_RULE_SETUP
{ lr_bispa= bispa_none; lr_bisexec= bisexec_reset; lr_dir= df_reset; return tokv_word_reset; }
YY_BREAK
case 52:
YY_RULE_SETUP
{ lr_bispa= bispa_none; lr_bisexec= bisexec_execute; lr_dir= df_execute; return tokv_word_execute; }
YY_BREAK
case 53:
YY_RULE_SETUP
{ lr_bispa= bispa_none; lr_bisexec= bisexec_execute; lr_dir= df_execute; return tokv_word_execute; }
YY_BREAK
case 53:
YY_RULE_SETUP
{ lr_bispa= bispa_none; lr_bisexec= bisexec_help; return tokv_word_help; }
YY_BREAK
case 54:
YY_RULE_SETUP
{ lr_bispa= bispa_none; lr_bisexec= bisexec_help; return tokv_word_help; }
YY_BREAK
case 54:
YY_RULE_SETUP
{ lr_parameter= pf_service; return tokv_word_service; }
YY_BREAK
case 55:
YY_RULE_SETUP
{ lr_parameter= pf_service; return tokv_word_service; }
YY_BREAK
case 55:
YY_RULE_SETUP
{ lr_parameter= pf_callinguser; return tokv_word_callinguser; }
YY_BREAK
case 56:
YY_RULE_SETUP
{ lr_parameter= pf_callinguser; return tokv_word_callinguser; }
YY_BREAK
case 56:
YY_RULE_SETUP
{ lr_parameter= pf_callinggroup; return tokv_word_callinggroup; }
YY_BREAK
case 57:
YY_RULE_SETUP
{ lr_parameter= pf_callinggroup; return tokv_word_callinggroup; }
YY_BREAK
case 57:
YY_RULE_SETUP
{ lr_parameter= pf_callingusershell; return tokv_word_callingusershell; }
YY_BREAK
case 58:
YY_RULE_SETUP
{ lr_parameter= pf_callingusershell; return tokv_word_callingusershell; }
YY_BREAK
case 58:
YY_RULE_SETUP
{ lr_parameter= pf_serviceuser; return tokv_word_serviceuser; }
YY_BREAK
case 59:
YY_RULE_SETUP
{ lr_parameter= pf_serviceuser; return tokv_word_serviceuser; }
YY_BREAK
case 59:
YY_RULE_SETUP
{ lr_parameter= pf_servicegroup; return tokv_word_servicegroup; }
YY_BREAK
case 60:
YY_RULE_SETUP
{ lr_parameter= pf_servicegroup; return tokv_word_servicegroup; }
YY_BREAK
case 60:
YY_RULE_SETUP
{ lr_parameter= pf_serviceusershell; return tokv_word_serviceusershell; }
YY_BREAK
case 61:
YY_RULE_SETUP
{ lr_parameter= pf_serviceusershell; return tokv_word_serviceusershell; }
YY_BREAK
case 61:
YY_RULE_SETUP
{ lr_loglevel= LOG_DEBUG; return tokv_syslog_debug; }
YY_BREAK
case 62:
YY_RULE_SETUP
{ lr_loglevel= LOG_DEBUG; return tokv_syslog_debug; }
YY_BREAK
case 62:
YY_RULE_SETUP
{ lr_loglevel= LOG_INFO; return tokv_syslog_info; }
YY_BREAK
case 63:
YY_RULE_SETUP
{ lr_loglevel= LOG_INFO; return tokv_syslog_info; }
YY_BREAK
case 63:
YY_RULE_SETUP
{ lr_loglevel= LOG_NOTICE; return tokv_syslog_notice; }
YY_BREAK
case 64:
YY_RULE_SETUP
{ lr_loglevel= LOG_NOTICE; return tokv_syslog_notice; }
YY_BREAK
case 64:
YY_RULE_SETUP
{ lr_loglevel= LOG_WARNING; return tokv_syslog_warning; }
YY_BREAK
case 65:
YY_RULE_SETUP
{ lr_loglevel= LOG_WARNING; return tokv_syslog_warning; }
YY_BREAK
case 65:
YY_RULE_SETUP
{ lr_loglevel= LOG_ERR; return tokv_syslog_err; }
YY_BREAK
case 66:
YY_RULE_SETUP
{ lr_loglevel= LOG_ERR; return tokv_syslog_err; }
YY_BREAK
case 66:
YY_RULE_SETUP
{ lr_loglevel= LOG_CRIT; return tokv_syslog_crit; }
YY_BREAK
case 67:
YY_RULE_SETUP
{ lr_loglevel= LOG_CRIT; return tokv_syslog_crit; }
YY_BREAK
case 67:
YY_RULE_SETUP
{ lr_loglevel= LOG_ALERT; return tokv_syslog_alert; }
YY_BREAK
case 68:
YY_RULE_SETUP
{ lr_loglevel= LOG_ALERT; return tokv_syslog_alert; }
YY_BREAK
case 68:
YY_RULE_SETUP
{ lr_loglevel= LOG_EMERG; return tokv_syslog_emerg; }
YY_BREAK
case 69:
YY_RULE_SETUP
{ lr_loglevel= LOG_EMERG; return tokv_syslog_emerg; }
YY_BREAK
case 69:
YY_RULE_SETUP
{ lr_logfacility= LOG_AUTHPRIV; return tokv_syslog_authpriv; }
YY_BREAK
case 70:
YY_RULE_SETUP
{ lr_logfacility= LOG_AUTHPRIV; return tokv_syslog_authpriv; }
YY_BREAK
case 70:
YY_RULE_SETUP
{ lr_logfacility= LOG_CRON; return tokv_syslog_cron; }
YY_BREAK
case 71:
YY_RULE_SETUP
{ lr_logfacility= LOG_CRON; return tokv_syslog_cron; }
YY_BREAK
case 71:
YY_RULE_SETUP
{ lr_logfacility= LOG_DAEMON; return tokv_syslog_daemon; }
YY_BREAK
case 72:
YY_RULE_SETUP
{ lr_logfacility= LOG_DAEMON; return tokv_syslog_daemon; }
YY_BREAK
case 72:
YY_RULE_SETUP
{ lr_logfacility= LOG_KERN; return tokv_syslog_kern; }
YY_BREAK
case 73:
YY_RULE_SETUP
{ lr_logfacility= LOG_KERN; return tokv_syslog_kern; }
YY_BREAK
case 73:
YY_RULE_SETUP
{ lr_logfacility= LOG_LPR; return tokv_syslog_lpr; }
YY_BREAK
case 74:
YY_RULE_SETUP
{ lr_logfacility= LOG_LPR; return tokv_syslog_lpr; }
YY_BREAK
case 74:
YY_RULE_SETUP
{ lr_logfacility= LOG_MAIL; return tokv_syslog_mail; }
YY_BREAK
case 75:
YY_RULE_SETUP
{ lr_logfacility= LOG_MAIL; return tokv_syslog_mail; }
YY_BREAK
case 75:
YY_RULE_SETUP
{ lr_logfacility= LOG_NEWS; return tokv_syslog_news; }
YY_BREAK
case 76:
YY_RULE_SETUP
{ lr_logfacility= LOG_NEWS; return tokv_syslog_news; }
YY_BREAK
case 76:
YY_RULE_SETUP
{ lr_logfacility= LOG_SYSLOG; return tokv_syslog_syslog; }
YY_BREAK
case 77:
YY_RULE_SETUP
{ lr_logfacility= LOG_SYSLOG; return tokv_syslog_syslog; }
YY_BREAK
case 77:
YY_RULE_SETUP
{ lr_logfacility= LOG_USER; return tokv_syslog_user; }
YY_BREAK
case 78:
YY_RULE_SETUP
{ lr_logfacility= LOG_USER; return tokv_syslog_user; }
YY_BREAK
case 78:
YY_RULE_SETUP
{ lr_logfacility= LOG_UUCP; return tokv_syslog_uucp; }
YY_BREAK
case 79:
YY_RULE_SETUP
{ lr_logfacility= LOG_UUCP; return tokv_syslog_uucp; }
YY_BREAK
case 79:
YY_RULE_SETUP
{ lr_logfacility= LOG_LOCAL0; return tokv_syslog_local0; }
YY_BREAK
case 80:
YY_RULE_SETUP
{ lr_logfacility= LOG_LOCAL0; return tokv_syslog_local0; }
YY_BREAK
case 80:
YY_RULE_SETUP
{ lr_logfacility= LOG_LOCAL1; return tokv_syslog_local1; }
YY_BREAK
case 81:
YY_RULE_SETUP
{ lr_logfacility= LOG_LOCAL1; return tokv_syslog_local1; }
YY_BREAK
case 81:
YY_RULE_SETUP
{ lr_logfacility= LOG_LOCAL2; return tokv_syslog_local2; }
YY_BREAK
case 82:
YY_RULE_SETUP
{ lr_logfacility= LOG_LOCAL2; return tokv_syslog_local2; }
YY_BREAK
case 82:
YY_RULE_SETUP
{ lr_logfacility= LOG_LOCAL3; return tokv_syslog_local3; }
YY_BREAK
case 83:
YY_RULE_SETUP
{ lr_logfacility= LOG_LOCAL3; return tokv_syslog_local3; }
YY_BREAK
case 83:
YY_RULE_SETUP
{ lr_logfacility= LOG_LOCAL4; return tokv_syslog_local4; }
YY_BREAK
case 84:
YY_RULE_SETUP
{ lr_logfacility= LOG_LOCAL4; return tokv_syslog_local4; }
YY_BREAK
case 84:
YY_RULE_SETUP
{ lr_logfacility= LOG_LOCAL5; return tokv_syslog_local5; }
YY_BREAK
case 85:
YY_RULE_SETUP
{ lr_logfacility= LOG_LOCAL5; return tokv_syslog_local5; }
YY_BREAK
case 85:
YY_RULE_SETUP
{ lr_logfacility= LOG_LOCAL6; return tokv_syslog_local6; }
YY_BREAK
case 86:
YY_RULE_SETUP
{ lr_logfacility= LOG_LOCAL6; return tokv_syslog_local6; }
YY_BREAK
case 86:
YY_RULE_SETUP
{ lr_logfacility= LOG_LOCAL7; return tokv_syslog_local7; }
YY_BREAK
case 87:
YY_RULE_SETUP
{ lr_logfacility= LOG_LOCAL7; return tokv_syslog_local7; }
YY_BREAK
case 87:
YY_RULE_SETUP
{ return tokv_word_read; }
YY_BREAK
case 88:
YY_RULE_SETUP
{ return tokv_word_read; }
YY_BREAK
case 88:
YY_RULE_SETUP
{ return tokv_word_write; }
YY_BREAK
case 89:
YY_RULE_SETUP
{ return tokv_word_write; }
YY_BREAK
case 89:
YY_RULE_SETUP
{ return tokv_dollar; }
YY_BREAK
case 90:
YY_RULE_SETUP
{ return tokv_dollar; }
YY_BREAK
case 90:
YY_RULE_SETUP
{ lr_max= lr_min= 0; return tokv_word_stdin; }
YY_BREAK
case 91:
YY_RULE_SETUP
{ lr_max= lr_min= 0; return tokv_word_stdin; }
YY_BREAK
case 91:
YY_RULE_SETUP
{ lr_max= lr_min= 1; return tokv_word_stdout; }
YY_BREAK
case 92:
YY_RULE_SETUP
{ lr_max= lr_min= 1; return tokv_word_stdout; }
YY_BREAK
case 92:
YY_RULE_SETUP
{ lr_max= lr_min= 2; return tokv_word_stderr; }
YY_BREAK
case 93:
YY_RULE_SETUP
{ lr_max= lr_min= 2; return tokv_word_stderr; }
YY_BREAK
case 93:
YY_RULE_SETUP
{ return tokv_openparen; }
YY_BREAK
case 94:
YY_RULE_SETUP
{ return tokv_openparen; }
YY_BREAK
case 94:
YY_RULE_SETUP
{ return tokv_closeparen; }
YY_BREAK
case 95:
YY_RULE_SETUP
{ return tokv_closeparen; }
YY_BREAK
case 95:
YY_RULE_SETUP
{ return tokv_not; }
YY_BREAK
case 96:
YY_RULE_SETUP
{ return tokv_not; }
YY_BREAK
case 96:
YY_RULE_SETUP
{ return tokv_and; }
YY_BREAK
case 97:
YY_RULE_SETUP
{ return tokv_and; }
YY_BREAK
case 97:
YY_RULE_SETUP
{ return tokv_or; }
YY_BREAK
case 98:
YY_RULE_SETUP
{ return tokv_or; }
YY_BREAK
case 98:
YY_RULE_SETUP
{ lr_dir= df_error; lr_loglevel= LOG_ERR; return tokv_word_error; }
YY_BREAK
case 99:
YY_RULE_SETUP
{ lr_dir= df_error; lr_loglevel= LOG_ERR; return tokv_word_error; }
YY_BREAK
case 99:
YY_RULE_SETUP
{
char *ep;
lr_min=lr_max= (int)strtoul(yytext,&ep,10);
{
char *ep;
lr_min=lr_max= (int)strtoul(yytext,&ep,10);
YY_BREAK
case 100:
YY_RULE_SETUP
YY_BREAK
case 100:
YY_RULE_SETUP
{
char *ep;
lr_min= (int)strtoul(yytext,&ep,10);
{
char *ep;
lr_min= (int)strtoul(yytext,&ep,10);
YY_BREAK
case 101:
YY_RULE_SETUP
YY_BREAK
case 101:
YY_RULE_SETUP
{
char *ep;
lr_min= (int)strtoul(yytext,&ep,10);
{
char *ep;
lr_min= (int)strtoul(yytext,&ep,10);
case 102:
/* rule 102 can match eol */
YY_RULE_SETUP
case 102:
/* rule 102 can match eol */
YY_RULE_SETUP
countnewlines(); return tokv_lwsp;
YY_BREAK
case 103:
YY_RULE_SETUP
countnewlines(); return tokv_lwsp;
YY_BREAK
case 103:
YY_RULE_SETUP
return tokv_lwsp;
YY_BREAK
case 104:
/* rule 104 can match eol */
YY_RULE_SETUP
return tokv_lwsp;
YY_BREAK
case 104:
/* rule 104 can match eol */
YY_RULE_SETUP
cstate->lineno++; return tokv_newline;
YY_BREAK
case 105:
/* rule 105 can match eol */
YY_RULE_SETUP
cstate->lineno++; return tokv_newline;
YY_BREAK
case 105:
/* rule 105 can match eol */
YY_RULE_SETUP
cstate->lineno++; return tokv_newline;
YY_BREAK
case 106:
YY_RULE_SETUP
cstate->lineno++; return tokv_newline;
YY_BREAK
case 106:
YY_RULE_SETUP
return parseerrprint("missing newline at eof after comment");
YY_BREAK
case 107:
/* rule 107 can match eol */
YY_RULE_SETUP
return parseerrprint("missing newline at eof after comment");
YY_BREAK
case 107:
/* rule 107 can match eol */
YY_RULE_SETUP
{
countnewlines();
return dequote(yytext);
{
countnewlines();
return dequote(yytext);
YY_BREAK
case 108:
YY_RULE_SETUP
YY_BREAK
case 108:
YY_RULE_SETUP
return tokv_barestring;
YY_BREAK
case YY_STATE_EOF(INITIAL):
return tokv_barestring;
YY_BREAK
case YY_STATE_EOF(INITIAL):
return tokv_eof;
YY_BREAK
case 109:
YY_RULE_SETUP
return tokv_eof;
YY_BREAK
case 109:
YY_RULE_SETUP
return parseerrprint("misquoted or unterminated string");
YY_BREAK
case 110:
YY_RULE_SETUP
return parseerrprint("misquoted or unterminated string");
YY_BREAK
case 110:
YY_RULE_SETUP
return parseerrprint("unexpected backslash");
YY_BREAK
case 111:
YY_RULE_SETUP
return parseerrprint("unexpected backslash");
YY_BREAK
case 111:
YY_RULE_SETUP
abort(); /* expect lex warning "rule cannot be matched" */
YY_BREAK
case 112:
YY_RULE_SETUP
abort(); /* expect lex warning "rule cannot be matched" */
YY_BREAK
case 112:
YY_RULE_SETUP
#define YYTABLES_NAME "yytables"
#define YYTABLES_NAME "yytables"
const char *const builtinservicehelpstrings[]= {
const char *const builtinservicehelpstrings[]= {
-/* userv is
- * Copyright 1996-2017 Ian Jackson <ian@davenant.greenend.org.uk>.
- * Copyright 2000 Ben Harris <bjh21@cam.ac.uk>
- * Copyright 2016-2017 Peter Benie <pjb1008@cam.ac.uk>
+/*
+ * userv is copyright Ian Jackson and other contributors.
+ * See README for full authorship information.
*
* This is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by
*
* This is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by
dnl userv - lexer.l.m4
dnl lexer, passed through m4 with defs from langauge.i4
dnl userv - lexer.l.m4
dnl lexer, passed through m4 with defs from langauge.i4
-/* userv is
- * Copyright 1996-2017 Ian Jackson <ian@davenant.greenend.org.uk>.
- * Copyright 2000 Ben Harris <bjh21@cam.ac.uk>
- * Copyright 2016-2017 Peter Benie <pjb1008@cam.ac.uk>
+/*
+ * userv is copyright Ian Jackson and other contributors.
+ * See README for full authorship information.
*
* This is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by
*
* This is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by
.%A Ian Jackson
.Re
.Sh COPYRIGHT
.%A Ian Jackson
.Re
.Sh COPYRIGHT
-GNU userv is Copyright 1996-2017 Ian Jackson; Copyright 2000 Ben
-Harris; and Copyright 2016-2017 Peter Benie.
+GNU userv is copyright Ian Jackson and other contributors.
+See README or
+.Dv userv --copright
+for full authorship information.
.Pp
GNU userv is licensed under the terms of the GNU General Public
Licence, version 3 or (at your option) any later version, and it comes
.Pp
GNU userv is licensed under the terms of the GNU General Public
Licence, version 3 or (at your option) any later version, and it comes
.%A Ian Jackson
.Re
.Sh COPYRIGHT
.%A Ian Jackson
.Re
.Sh COPYRIGHT
-GNU userv is Copyright 1996-2017 Ian Jackson; Copyright 2000 Ben
-Harris; and Copyright 2016-2017 Peter Benie.
-.Pp
+GNU userv is copyright Ian Jackson and other contributors.
+See README or
+.Dv userv --copright
+for full authorship information.
.Pp
GNU userv is licensed under the terms of the GNU General Public
Licence, version 3 or (at your option) any later version, and it comes
.Pp
GNU userv is licensed under the terms of the GNU General Public
Licence, version 3 or (at your option) any later version, and it comes