setenv { yylval.i = DGLCMD_SETENV; return TYPE_DGLCMD2; }
exec { yylval.i = DGLCMD_EXEC; return TYPE_DGLCMD2; }
chpasswd { yylval.i = DGLCMD_CHPASSWD; return TYPE_DGLCMD0; }
+chmail { yylval.i = DGLCMD_CHMAIL; return TYPE_DGLCMD0; }
DEFINE { return TYPE_DEFINE_GAME; }
DGLCMD_UNLINK, /* unlink foo */
DGLCMD_EXEC, /* exec foo bar */
DGLCMD_SETENV, /* setenv foo bar */
+ DGLCMD_CHMAIL, /* chmail */
DGLCMD_CHPASSWD /* chpasswd */
} dglcmd_actions;
case DGLCMD_CHPASSWD:
if (loggedin) changepw(1);
break;
+ case DGLCMD_CHMAIL:
+ if (loggedin) change_email();
+ break;
}
free(p1);
free(p2);
# setenv "foo "bar" = sets environment variable "foo" to "bar"
# exec "foo" "bar" = execute "foo" with "bar" as it's param
# chpasswd = do the change password prompting, if logged in
+# chmail = do the change email prompting, if logged in
#
# The commands will be done inside the chroot and with the uid and gid
# defined above.