+diff -r ed93c5ec7a2b ircd/ircd_lexer.l
+--- a/ircd/ircd_lexer.l Tue Feb 03 18:41:29 2009 +0100
++++ b/ircd/ircd_lexer.l Tue Feb 03 19:05:37 2009 +0100
+@@ -168,6 +168,8 @@
+ { "serverinfo", TPRIV_SERVERINFO },
+ { "user_privacy", TPRIV_USER_PRIVACY },
+ { "channel_privacy", TPRIV_CHANNEL_PRIVACY },
++ { "local_welcome", TPRIV_LOCAL_WELCOME },
++ { "welcome", TPRIV_WELCOME },
+ { NULL, 0 }
+ };
+ static int ntokens;
+diff -r ed93c5ec7a2b ircd/ircd_parser.y
+--- a/ircd/ircd_parser.y Tue Feb 03 18:41:29 2009 +0100
++++ b/ircd/ircd_parser.y Tue Feb 03 19:05:37 2009 +0100
+@@ -189,7 +189,8 @@
+ %token TPRIV_FORCE_OPMODE TPRIV_FORCE_LOCAL_OPMODE TPRIV_APASS_OPMODE
+ %token TPRIV_CHANSERV TPRIV_XTRA_OPER TPRIV_NOIDLE TPRIV_FREEFORM TPRIV_PARANOID
+ %token TPRIV_CHECK TPRIV_WALL TPRIV_CLOSE TPRIV_ROUTE TPRIV_ROUTEINFO TPRIV_SERVERINFO
+-%token TPRIV_CHANNEL_PRIVACY TPRIV_USER_PRIVACY TPRIV_LIST_CHAN
++%token TPRIV_CHANNEL_PRIVACY TPRIV_USER_PRIVACY TPRIV_LIST_CHAN
++%token TPRIV_LOCAL_WELCOME TPRIV_WELCOME
+ /* and some types... */
+ %type <num> sizespec
+ %type <num> timespec timefactor factoredtimes factoredtime
+@@ -704,6 +705,8 @@
+ TPRIV_SERVERINFO { $$ = PRIV_SERVERINFO ; } |
+ TPRIV_CHANNEL_PRIVACY { $$ = PRIV_CHANNEL_PRIVACY ; } |
+ TPRIV_USER_PRIVACY { $$ = PRIV_USER_PRIVACY ; } |
++ TPRIV_LOCAL_WELCOME { $$ = PRIV_LOCAL_WELCOME; } |
++ TPRIV_WELCOME { $$ = PRIV_WELCOME; } |
+ TPRIV_PARANOID { $$ = PRIV_PARANOID; } ;
+ yesorno: YES { $$ = 1; } | NO { $$ = 0; };
+
+diff -r ed93c5ec7a2b ircd/m_welcome.c