Files
mop3/mailtest/mailtest.c
kamkow1 fbf067d418
All checks were successful
Build ISO image / build-and-deploy (push) Successful in 2m6s
Build documentation / build-and-deploy (push) Successful in 1m18s
Parse commandline strings, move away from old env vars
2026-04-28 22:45:31 +02:00

43 lines
1.2 KiB
C

#include <cmdline_parser.h>
#include <debugconsole.h>
#include <process.h>
#include <status.h>
#include <strconv.h>
#include <string.h>
#include <system.h>
static bool cmdline_send = false;
static bool cmdline_recv = false;
static char cmdline_payload[CMDLINE_OPT_VALUE_MAX];
static uint64_t cmdline_pg;
static struct cmdline_opt cmdline_opts[] = {
CMDLINE_OPT("s", "send", CMDLINE_OPT_VALUE_BOOL, false, &cmdline_send),
CMDLINE_OPT("r", "recv", CMDLINE_OPT_VALUE_BOOL, false, &cmdline_recv),
CMDLINE_OPT("p", "payload", CMDLINE_OPT_VALUE_STRING, false, (char*)cmdline_payload),
CMDLINE_OPT("pg", "procgroup", CMDLINE_OPT_VALUE_INT, false, &cmdline_pg),
CMDLINE_END(),
};
void app_main(void) {
if (cmdline_parse(get_cmdline(), cmdline_opts) < 0) {
return;
}
if (cmdline_recv) {
char recv_buffer[1024];
for (;;) {
debug_printf("Waiting...\n");
memset(recv_buffer, 0, sizeof(recv_buffer));
mail_receive(recv_buffer, sizeof(recv_buffer));
debug_printf("Recv: %s\n", recv_buffer);
}
} else if (cmdline_send) {
debug_printf("sending [%s] to PG %d\n", cmdline_payload, (int)cmdline_pg);
mail_send((int)cmdline_pg, cmdline_payload, strlen(cmdline_payload));
}
}