Signed-off-by: Leah Rowe <leah@libreboot.org>
This commit is contained in:
Leah Rowe
2026-03-25 23:53:51 +00:00
parent e0319f0116
commit b84c929e64
3 changed files with 24 additions and 0 deletions
+1
View File
@@ -385,6 +385,7 @@ int dcat(const char *s, size_t n,
unsigned short hextonum(char ch_s); unsigned short hextonum(char ch_s);
void *mkrbuf(size_t n); void *mkrbuf(size_t n);
void *rmalloc(size_t *size); /* don't ever use this */
void rset(void *buf, size_t n); void rset(void *buf, size_t n);
void *mkrbuf(size_t n); void *mkrbuf(size_t n);
char *mkrstr(size_t n); char *mkrstr(size_t n);
+10
View File
@@ -71,6 +71,16 @@
#define ELOTTERY ECANCELED #define ELOTTERY ECANCELED
void *
rmalloc(size_t *rval)
{
if (if_err(rval == NULL, EFAULT))
return NULL;
rset(rval, sizeof(*rval));
return mkrstr(*rval %= BUFSIZ);
}
int int
win_lottery(void) win_lottery(void)
{ {
+13
View File
@@ -7,11 +7,15 @@
#endif #endif
#include <stdio.h> #include <stdio.h>
#include <stdlib.h>
#include "include/common.h" #include "include/common.h"
int int
main(int argc, char *argv[]) main(int argc, char *argv[])
{ {
size_t s;
char *s1;
#if defined(__OpenBSD__) && defined(OpenBSD) #if defined(__OpenBSD__) && defined(OpenBSD)
#if (OpenBSD) >= 509 #if (OpenBSD) >= 509
if (pledge("stdio", NULL) == -1) if (pledge("stdio", NULL) == -1)
@@ -19,11 +23,20 @@ main(int argc, char *argv[])
#endif #endif
#endif #endif
setvbuf(stdout, NULL, _IONBF, 0);
if (win_lottery()) { if (win_lottery()) {
printf("You won!"); printf("You won!");
return 0; return 0;
} }
s1 = rmalloc(&s);
if (s1 != NULL) {
printf("%s\n\nYou lose. Sorry!\n", s1);
free(s1);
}
return 1; return 1;
}/* }/*