erythros/System/Shell/Commands/whoami.HC

28 lines
No EOL
801 B
HolyC

I64 @shell_cmd_whoami(@shell* sh, I64 argc, U8** argv)
{
U8* options_list = "";
U64 options_err = NULL;
I64 flags = NULL;
I64 res = 0;
U8 buf[512];
switch (
@shell_parse_opts(sh, options_list, argc, argv, &flags, &options_err)) {
case SHELL_OPTS_ERR_INVALID_OPT:
StrPrint(&buf, "uname: unrecognized option -- '%s'\n", options_err);
Stdio.WriteLine(sh, &buf);
res = 1;
break;
case SHELL_OPTS_ERR_EXTRA_OPD:
StrPrint(&buf, "uname: extra operand '%s'\n", options_err);
Stdio.WriteLine(sh, &buf);
res = 1;
break;
default:
Stdio.WriteLine(sh, &sh->session->user.name);
Stdio.WriteLine(sh, "\n");
break;
}
if (options_err)
Free(options_err);
return res;
}