Skip to content

Agent API_p17

grisun0 edited this page Oct 9, 2026 · 13 revisions

API (page 17 of 19)

Previous: API_p16.md

progs/src/freedom.c

Depends on: kernel/string.c

  • curlfree (function) progs/src/freedom.c:4 * spirit of curlfree (http.c + htmlfilter.c): a bounded header phase, * Content-Length or EOF body reading...
  • net_dns_resolve (function) progs/src/freedom.c:41 int net_dns_resolve(const char *host); -- Ring-3 TLS build (phase 2 of docs/TLS_MIGRATION.md): host libc for sockets/stdio/strings (identical ABI numbers...
  • tls_handshake (function) progs/src/freedom.c:42 int tls_handshake(int fd, char *host);
  • tls_send (function) progs/src/freedom.c:43 int tls_send(int fd, char *buf, int len);
  • tls_recv (function) progs/src/freedom.c:44 int tls_recv(int fd, char *buf, int len);
  • socket (function) progs/src/freedom.c:52 int socket(int domain, int type, int proto); -- else
  • connect (function) progs/src/freedom.c:53 int connect(int fd, void *addr, int addrlen);
  • sendto (function) progs/src/freedom.c:54 int sendto(int fd, char *buf, int len, int flags, void *to, int tolen);
  • recvfrom (function) progs/src/freedom.c:55 int recvfrom(int fd, char *buf, int len, int flags, void *from, int *fromlen);
  • close (function) progs/src/freedom.c:56 int close(int fd);
  • tls_close (function) progs/src/freedom.c:58 static int tls_close(int fd) -- Session-aware close (frees the TLS session for fd, no-op when none): every fetch path must use this, never raw...
  • printf (function) progs/src/freedom.c:63 int printf(char *fmt, ...);
  • puts (function) progs/src/freedom.c:64 int puts(char *s);
  • strlen (function) progs/src/freedom.c:65 int strlen(char *s);
  • strchr (function) progs/src/freedom.c:66 char *strchr(char *s, int c);
  • strcmp (function) progs/src/freedom.c:67 int strcmp(char *a, char *b);
  • strncmp (function) progs/src/freedom.c:68 int strncmp(char *a, char *b, int n);
  • memcpy (function) progs/src/freedom.c:69 int memcpy(char *dst, char *src, int n);
  • memset (function) progs/src/freedom.c:70 int memset(char *dst, int c, int n);
  • putchar (function) progs/src/freedom.c:71 int putchar(int c);
  • atoi (function) progs/src/freedom.c:151 static int atoi(char *s) -- static char f_dom[FREEDOM_DOM_BUF]; static int f_domlen; static char f_css[FREEDOM_CSS_BUF]; static int f_csslen...
  • append (function) progs/src/freedom.c:166 static int append(char *dst, int pos, char *src, int cap) -- Append src to dst at pos; returns the new length or -1 when it does not fit.
  • ci_lower (function) progs/src/freedom.c:176 static int ci_lower(int c)
  • ci_starts (function) progs/src/freedom.c:182 static int ci_starts(char *s, char *pre) -- if (pos < 0) return -1; n = strlen(src); if (pos + n >= cap) return -1; memcpy(dst + pos, src, n); dst[pos + n] = 0...
  • ci_eq (function) progs/src/freedom.c:193 static int ci_eq(char *a, char *b) -- } /* Case-insensitive starts-with. static int ci_starts(char *s, char *pre) { while (*pre) { if (!*s) return 0; if...
  • ci_index (function) progs/src/freedom.c:203 static int ci_index(char *s, char *needle) -- return 1; } /* Case-insensitive equality. static int ci_eq(char *a, char *b) { while (*a && *b) { if (ci_lower(*a)...
  • looks_like_url (function) progs/src/freedom.c:212 static int looks_like_url(char *s) -- } return *a == 0 && b == 0; } / Case-insensitive index of needle in haystack, or -1. static int ci_index(char *s...
  • has_scheme (function) progs/src/freedom.c:226 static int has_scheme(char *s) -- Does s begin with ":" per RFC 3986 (ALPHA *(ALPHA/DIGIT/+/-/.) ":")?
  • make_search (function) progs/src/freedom.c:242 static void make_search(char *out, char *query, int cap) -- char c; c = s[0]; if (!((c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z'))) return 0; for (i = 1; s[i]; i++) { c =...
  • split_url (function) progs/src/freedom.c:266 static int split_url(char *url) -- Split an http:// or https:// URL into f_host, f_path, f_port and f_secure.
  • resolve_redirect (function) progs/src/freedom.c:313 static int resolve_redirect(void) -- Recompute f_host/f_path/f_port/f_secure from the last Location value.
  • put_ws (function) progs/src/freedom.c:366 static void put_ws(void)
  • put_utf (function) progs/src/freedom.c:377 static void put_utf(int c) -- Print one text byte through the UTF-8 gate.
  • put_text (function) progs/src/freedom.c:427 static void put_text(int c) -- Print one text byte: whitespace collapses, everything else goes * through the UTF-8 gate.
  • css_append (function) progs/src/freedom.c:483 static void css_append(char *s, int n)
  • css_line (function) progs/src/freedom.c:489 static void css_line(char *s)
  • dom_append (function) progs/src/freedom.c:494 static void dom_append(char *s, int n)
  • dom_space (function) progs/src/freedom.c:500 static void dom_space(void)
  • dom_nl (function) progs/src/freedom.c:504 static void dom_nl(void)
  • record_attr (function) progs/src/freedom.c:509 static void record_attr(void) -- int i; for (i = 0; i < n && f_domlen < FREEDOM_DOM_BUF - 1; i++) f_dom[f_domlen++] = s[i]; } static void...
  • is_void_tag (function) progs/src/freedom.c:534 static int is_void_tag(void) -- f_hreflen = f_vallen < 127 ? f_vallen : 127; memcpy(f_href, f_val, f_hreflen); f_href[f_hreflen] = 0; } else if...
  • classify_tag (function) progs/src/freedom.c:546 static void classify_tag(void) -- A tag was fully collected into f_tagn (+ attributes).
  • body_byte (function) progs/src/freedom.c:631 static void body_byte(int c) -- } dom_nl(); if (!is_void_tag()) f_depth++; } if (ci_eq(f_tagn, "br") || ci_eq(f_tagn, "p") || ci_eq(f_tagn, "div")...
  • head_line (function) progs/src/freedom.c:796 static void head_line(char *line) -- f_rel_ss = 0; return; } if (c == '&') { f_entlen = 1; f_ent[0] = 0; return; } put_text(c); } /* --- HTTP
  • parse_head (function) progs/src/freedom.c:821 static void parse_head(void) -- Parse the collected header block f_hdr[0..f_hlen-1] (the last four * bytes are the terminating CRLF CRLF).
  • recv_body (function) progs/src/freedom.c:843 static int recv_body(int fd, char *buf, int len) -- f_hdr[lend] = 0; if (i == 0) { char *sp; sp = strchr(f_hdr, ' '); if (sp) f_status = atoi(sp + 1); } else if (lend >...
  • send_all (function) progs/src/freedom.c:849 static int send_all(int fd, char *buf, int len) -- head_line(f_hdr + i); } f_hdr[lend] = '\r'; i = lend + 2; } } /* Receive body bytes: TLS for f_secure, plain TCP...
  • fetch (function) progs/src/freedom.c:860 static int fetch(char *host, char *path, int port) -- Send one HTTP request and process the response body.
  • fetch_css (function) progs/src/freedom.c:1031 static void fetch_css(char *host, char *path) -- Fetch a linked stylesheet and print its raw body (through the UTF-8 * gate).
  • print_css_dump (function) progs/src/freedom.c:1113 static void print_css_dump(void) -- } continue; } f_ws = 0; put_utf(c); got++; } } tls_close(fd); putchar('\n'); printf("freedom: %s (%d bytes)\n"...
  • print_dom_dump (function) progs/src/freedom.c:1122 static void print_dom_dump(void) -- putchar('\n'); printf("freedom: %s (%d bytes)\n", host, got); } /* Print the collected CSS dump. static void...
  • main (function) progs/src/freedom.c:1129 int main(int argc, char **argv)

progs/src/freedom_wl.c

Depends on: headers/vga_fb.h, kernel/string.c, progs/minios_abi.h, progs/nk_palette.h, progs/wl/wl_mini.h Imported by: tests/test_freedom_wl.c

  • net_dns_resolve (function) progs/src/freedom_wl.c:42 int net_dns_resolve(const char *host);
  • tls_handshake (function) progs/src/freedom_wl.c:43 int tls_handshake(int fd, char *host);
  • tls_send (function) progs/src/freedom_wl.c:44 int tls_send(int fd, char *buf, int len);
  • tls_recv (function) progs/src/freedom_wl.c:45 int tls_recv(int fd, char *buf, int len);
  • tls_close (function) progs/src/freedom_wl.c:46 void tls_close(int fd);
  • freedom_wl_surface_id (function) progs/src/freedom_wl.c:114 static long freedom_wl_surface_id(void) -- Logical Wayland-mini surface id for this client (ADR-0024).
  • freedom_wl_surface_attach (function) progs/src/freedom_wl.c:129 static long freedom_wl_surface_attach(FreedomWlConfig *c) -- Attach this client to the wlcomp mapping: encode an attach message for the first pool and a commit for our surface...
  • freedom_wl_default (function) progs/src/freedom_wl.c:158 static FreedomWlConfig freedom_wl_default(void) -- if (pool != WL_ID_POOL_BASE || w != (int)c->surface_w || h != (int)c->surface_h) return -1L; n =...
  • freedom_wl_clip_rect (function) progs/src/freedom_wl.c:196 static long freedom_wl_clip_rect(FreedomWlConfig *c, long *x, long *y, long *w, long *h) -- c.hops_max = WL_HOPS_MAX; c.font_w = WL_FONT_W; c.font_h = WL_FONT_H; c.port_http = 80L; c.port_https = 443L...
  • freedom_wl_frame_bytes (function) progs/src/freedom_wl.c:227 static long freedom_wl_frame_bytes(FreedomWlConfig *c, long w, long h) -- } if (*x + *w > c->surface_w) { w = c->surface_w - *x; } if (*y + *h > c->surface_h) { h = c->surface_h - *y; } if...
  • freedom_wl_keysym (function) progs/src/freedom_wl.c:246 static long freedom_wl_keysym(FreedomWlConfig *c, long sc) -- if (w <= 0L || h <= 0L) { return -1L; } if (w > c->surface_w || h > c->surface_h) { return -1L; } bytes_per_pixel =...
  • freedom_wl_sanitize_utf8 (function) progs/src/freedom_wl.c:286 static long freedom_wl_sanitize_utf8(char *s, long cap) -- } if (make == 0x39L) { return 32L; } if (make == 0x0EL) { return 8L; } if (make == 0x0FL) { return 9L; } return -1L...
  • freedom_wl_title_ok (function) progs/src/freedom_wl.c:359 static long freedom_wl_title_ok(FreedomWlConfig *c, char *t, long n) -- i++; } if (o >= cap - 1L) { break; } } if (o >= cap) { return -1L; } s[o] = 0; return o; } /** Validate a window...
  • wl_copy (function) progs/src/freedom_wl.c:370 static long wl_copy(char *dst, char *src, long cap) -- } /** Validate a window title against the kernel title bound. static long freedom_wl_title_ok(FreedomWlConfig *c...
  • wl_strlen (function) progs/src/freedom_wl.c:388 static long wl_strlen(char *s, long cap) -- } i = 0L; while (src[i] != 0) { if (i + 1L >= cap) { return -1L; } dst[i] = src[i]; i++; } dst[i] = 0; return 0L; }...
  • wl_append (function) progs/src/freedom_wl.c:404 static long wl_append(char *dst, long pos, char *src, long cap) -- if (!s || cap <= 0L) { return -1L; } i = 0L; while (i < cap && s[i] != 0) { i++; } if (i >= cap) { return -1L; }...
  • wl_ci_lower (function) progs/src/freedom_wl.c:427 static long wl_ci_lower(long ch) -- } if (pos + n >= cap) { return -1L; } i = 0L; while (i < n) { dst[pos + i] = src[i]; i++; } dst[pos + n] = 0; return...
  • wl_ci_starts (function) progs/src/freedom_wl.c:435 static long wl_ci_starts(char *s, char *pre) -- } dst[pos + n] = 0; return pos + n; } /** ASCII lowercase fold. static long wl_ci_lower(long ch) { if (ch >= 'A' &&...
  • wl_ci_contains (function) progs/src/freedom_wl.c:453 static long wl_ci_contains(char *s, char *needle) -- while (*pre) { if (*s == 0) { return 0L; } if (wl_ci_lower(*s) != wl_ci_lower(*pre)) { return 0L; } s++; pre++; }...
  • wl_has_scheme (function) progs/src/freedom_wl.c:467 static long wl_has_scheme(char *s) -- static long wl_ci_contains(char *s, char *needle) { if (!s || !needle) { return 0L; } while (*s) { if...
  • wl_looks_like_url (function) progs/src/freedom_wl.c:493 static long wl_looks_like_url(char *s) -- ch = s[i]; if (ch == ':') { return 1L; } if (!((ch >= 'A' && ch <= 'Z') || (ch >= 'a' && ch <= 'z') || (ch >= '0' &&...
  • wl_make_search (function) progs/src/freedom_wl.c:512 static long wl_make_search(char *out, char *query, long cap) -- dot = 0L; while (*s) { if (*s == ' ' || *s == '\t') { return 0L; } if (*s == '.') { dot = 1L; } s++; } return dot; }...
  • wl_split_url (function) progs/src/freedom_wl.c:544 static long wl_split_url(FreedomWlConfig *c, char *url, char *host, char *path, long *port, long ... -- } else { out[pos] = query; pos++; out[pos] = 0; } if (pos < 0L) { return -1L; } query++; } return pos; } /* Split...
  • wl_resolve_redirect (function) progs/src/freedom_wl.c:609 static long wl_resolve_redirect(FreedomWlConfig *c, char *loc, long secure, char *host, char *pat... -- if (plen < 0L) { return 0L; } if (wl_copy(path, p + hl, c->path_max) < 0L) { return 0L; } } else { path[0] = '/'...
  • wl_scroll_clamp (function) progs/src/freedom_wl.c:689 static long wl_scroll_clamp(FreedomWlConfig *c, long off, long nlines) -- if (last + 1L + l >= c->path_max) { return 0L; } i = 0L; while (i < l) { path[last + 1L + i] = loc[i]; i++; }...
  • wl_filter_wrap (function) progs/src/freedom_wl.c:708 static long wl_filter_wrap(FreedomWlConfig *c, char *body, long n, char *lines, long maxlines, lo... -- if (nlines <= c->text_rows) { return 0L; } maxoff = nlines - c->text_rows; if (off < 0L) { return 0L; } if (off >...
  • wl_status_text (function) progs/src/freedom_wl.c:951 static long wl_status_text(FreedomWlConfig *c, char *host, long nbytes, long off, long nlines, ch... -- lines[li * linelen + co] = (char)ch; co++; lines[li * linelen + co] = 0; } if (co > 0L) { return li + 1L; } if (li...
  • freedom_wl_build_palette (function) progs/src/freedom_wl.c:1039 static long freedom_wl_build_palette(unsigned char *pal, long cap) -- Shared hybrid palette, one table for every NK-window app (progs/nk_palette.h); this wrapper keeps the historic name...
  • freedom_wl_sys_present (function) progs/src/freedom_wl.c:1062 static long freedom_wl_sys_present(long buf, long origin) -- static char w_host[WL_HOST_MAX]; static char w_path[WL_PATH_MAX]; static char w_loc[WL_URL_MAX]; static char...
  • freedom_wl_sys_title (function) progs/src/freedom_wl.c:1069 static long freedom_wl_sys_title(char *t) -- static long w_nbytes; static long w_secure; static long w_port; static long w_status; static long w_truncated; /**...
  • freedom_wl_sys_palette (function) progs/src/freedom_wl.c:1076 static long freedom_wl_sys_palette(unsigned char *pal) -- static long freedom_wl_sys_present(long buf, long origin) { long ret; asm volatile("syscall" : "=a"(ret)...
  • freedom_wl_sys_mouse (function) progs/src/freedom_wl.c:1083 static long freedom_wl_sys_mouse(long *m) -- static long freedom_wl_sys_title(char *t) { long ret; asm volatile("syscall" : "=a"(ret)...
  • freedom_wl_sys_kbd (function) progs/src/freedom_wl.c:1090 static long freedom_wl_sys_kbd(void) -- static long freedom_wl_sys_palette(unsigned char *pal) { long ret; asm volatile("syscall" : "=a"(ret)...
  • freedom_wl_sys_vga_mode (function) progs/src/freedom_wl.c:1097 static long freedom_wl_sys_vga_mode(long on) -- static long freedom_wl_sys_mouse(long *m) { long ret; asm volatile("syscall" : "=a"(ret)...
  • freedom_wl_sys_kbd_raw (function) progs/src/freedom_wl.c:1104 static long freedom_wl_sys_kbd_raw(long on) -- static long freedom_wl_sys_kbd(void) { long ret; asm volatile("syscall" : "=a"(ret) : "a"(MINIOS_SYS_KBD)...
  • freedom_wl_sys_yield (function) progs/src/freedom_wl.c:1111 static long freedom_wl_sys_yield(void) -- static long freedom_wl_sys_vga_mode(long on) { long ret; asm volatile("syscall" : "=a"(ret)...
  • wl_parse_headers (function) progs/src/freedom_wl.c:1118 static long wl_parse_headers(FreedomWlConfig *c, char *hdr, long *status, long *clen, long *hascl... -- static long freedom_wl_sys_kbd_raw(long on) { long ret; asm volatile("syscall" : "=a"(ret)...
  • wl_fetch_raw (function) progs/src/freedom_wl.c:1210 static long wl_fetch_raw(FreedomWlConfig *c, char *host, char *path, long port, long secure) -- if (!wl_ci_starts(hdr + k, "text")) { istext = 0L; } } } line++; while (hdr[i] == '\r' || hdr[i] == '\n') { i++; } }...
  • wl_render (function) progs/src/freedom_wl.c:1445 static long wl_render(FreedomWlConfig *c, long off) -- if (got < c->body_cap) { w_body[got] = (char)ch; got++; } else { w_truncated = 1L; } } } } tls_close((int)fd)...
  • wl_browse (function) progs/src/freedom_wl.c:1532 static long wl_browse(FreedomWlConfig *c) -- long ink; if (bits & (0x80 >> px)) { ink = c->bar_fg; } else { ink = c->bar_bg; } fb[(c->text_rows * c->font_h +...
  • freedom_wl_selftest (function) progs/src/freedom_wl.c:1613 static long freedom_wl_selftest(void) -- off = off + (long)m[3] * c->scroll_step; changed = 1L; } if (changed) { off = wl_scroll_clamp(c, off, w_nlines); if...
  • freedom_wl_host_probe (function) progs/src/freedom_wl.c:1696 int freedom_wl_host_probe(FreedomWlConfig *c) -- return 1L; } if (freedom_wl_sys_kbd() > 0x7FFFFFFFL) { printf("freedom_wl: kbd out of range\n"); return 1L; }...
  • main (function) progs/src/freedom_wl.c:1731 int main(int argc, char **argv) -- } buf[0] = 'h'; buf[1] = 'i'; buf[2] = 0; if (freedom_wl_sanitize_utf8(buf, 16L) != 2L) { return 1; } if...

progs/src/ftest.c

  • fprintf (function) progs/src/ftest.c:4 extern int fprintf(void *stream, const char *fmt, ...); -- Exercises the kernel libc surface used by loaded .o programs: fprintf to stdout/stderr, snprintf into a buffer...
  • snprintf (function) progs/src/ftest.c:5 extern int snprintf(char *buf, unsigned long size, const char *fmt, ...);
  • printf (function) progs/src/ftest.c:6 extern int printf(const char *fmt, ...);
  • exit (function) progs/src/ftest.c:7 extern void exit(int code);
  • fopen (function) progs/src/ftest.c:11 extern void *fopen(const char *path, const char *mode);
  • main (function) progs/src/ftest.c:13 int main(int argc, char **argv)

progs/src/hello.c

  • printf (function) progs/src/hello.c:2 extern int printf(const char *fmt, ...); -- /* MiniOS test program — compiled as relocatable .o, loaded by kernel ELF loader
  • main (function) progs/src/hello.c:4 int main(int argc, char **argv)

progs/src/http.c

progs/src/json.c

progs/src/kmem.c

  • syscall3 (function) progs/src/kmem.c:7 static long syscall3(long n, long a1, long a2, long a3) -- Kernel-pointer rejection probe.
  • exit_now (function) progs/src/kmem.c:14 static void exit_now(long code)

progs/src/ldhello.c

progs/src/lxabi.c

Depends on: kernel/string.c, kernel/time.c

  • leaves the target aliv...`

progs/src/lxhello.c

  • lx_syscall3 (function) progs/src/lxhello.c:11 static long lx_syscall3(long n, long a1, long a2, long a3)
  • lx_strlen (function) progs/src/lxhello.c:23 static unsigned long lx_strlen(const char *s)
  • lx_write (function) progs/src/lxhello.c:29 static void lx_write(const char *s)
  • lx_write_int (function) progs/src/lxhello.c:33 static void lx_write_int(long v)
  • lmain (function) progs/src/lxhello.c:46 int lmain(long argc, char **argv) -- static void lx_write_int(long v) { char buf[24]; int i = (int)sizeof(buf); int neg = 0; buf[--i] = 0; if (v < 0) {...

progs/src/lxnet.c

Depends on: kernel/string.c

  • report (function) progs/src/lxnet.c:48 static void report(const char *name, int ok, const char *detail)
  • wait_for (function) progs/src/lxnet.c:54 static int wait_for(int fd, short events)
  • read_all (function) progs/src/lxnet.c:61 static int read_all(int fd, char *buf, size_t len) -- static void report(const char *name, int ok, const char *detail) { if (ok) printf("lxnet: %s ok\n", name); else {...
  • check_udp (function) progs/src/lxnet.c:72 static void check_udp(const struct sockaddr_in *peer)
  • check_refused (function) progs/src/lxnet.c:143 static void check_refused(const struct sockaddr_in *peer) -- A non-blocking connect to a port nobody listens on fails through poll * (POLLERR) with SO_ERROR = ECONNREFUSED...
  • check_tcp (function) progs/src/lxnet.c:167 static void check_tcp(const struct sockaddr_in *peer)
  • check_misc (function) progs/src/lxnet.c:210 static void check_misc(void)
  • dial (function) progs/src/lxnet.c:229 static int dial(const char *host, const char *port) -- if (fd >= 0) close(fd); struct addrinfo hints, *res = NULL; memset(&hints, 0, sizeof hints); hints.ai_family =...
  • main (function) progs/src/lxnet.c:273 int main(int argc, char **argv)

progs/src/lxsecc.c

Depends on: kernel/string.c

progs/src/lz4.c

progs/src/lzss.c

progs/src/mmreuse.c

progs/src/mprot.c

progs/src/mthreads.h

Depends on: progs/minios_abi.h Imported by: progs/src/fptest.c, progs/src/scfuzz.c, progs/src/thdemo.c

progs/src/mtop.c

progs/src/mvrn.c

progs/src/nx.c

progs/src/opl3.c

Depends on: kernel/string.c, progs/minios_abi.h Imported by: progs/piano/piano.c

  • sys_time (function) progs/src/opl3.c:36 static long sys_time(void)
  • sys_open (function) progs/src/opl3.c:39 static long sys_open(long on)
  • sys_submit (function) progs/src/opl3.c:42 static long sys_submit(const void *buf, long len)
  • busy_ms (function) progs/src/opl3.c:46 static void busy_ms(long ms)
  • opl3_set_instrument (function) progs/src/opl3.c:52 static void opl3_set_instrument(opl3_chip *chip) -- } static long sys_open(long on) { long r; asm volatile("syscall":"=a"(r):"a"(SYS_SB16_OPEN),"D"(on):"rcx","r11","...
  • opl3_note (function) progs/src/opl3.c:69 static void opl3_note(opl3_chip *chip, unsigned block, unsigned fnum, int on)
  • render (function) progs/src/opl3.c:77 static void render(opl3_chip *chip, long ms, long *fail) -- Render ms of the current note and stream it to the SB16.
  • main (function) progs/src/opl3.c:107 int main(void)

progs/src/pcmap.c

progs/src/pollready.c

progs/src/sbtone.c

Depends on: progs/minios_abi.h

  • Exit code is the number of submitted buffers (0 on failure to open). */

#include <stdio.h>...`

progs/src/scfuzz.c

Depends on: progs/src/mthreads.h

  • guest (function) progs/src/scfuzz.c:7 `* the guest (the BDD timeout then talks). All fuzz maps stay inside
  • one private 4 MB arena (pa...`

progs/src/shell.py

Depends on: progs/lua/minios.c

progs/src/spin.c

progs/src/thdemo.c

Depends on: progs/minios_abi.h, progs/src/mthreads.h

progs/src/w1.c

progs/tls_u/tls_u_main.c

Depends on: headers/tls.h, headers/tls_port.h, kernel/string.c

  • The kernel keeps servi...`
  • parse_port (function) progs/tls_u/tls_u_main.c:47 static int parse_port(const char *s) -- Strict port parser (clang-tidy cert-err34-c: atoi reports no errors, so "abc" and overflow both become 0 and fail...
  • main (function) progs/tls_u/tls_u_main.c:61 int main(int argc, char **argv)

progs/tls_u/tls_u_port.c

Depends on: kernel/string.c, kernel/time.c

  • openssl-s_server interop test), insi...`
  • tls_u_recv (function) progs/tls_u/tls_u_port.c:39 int tls_u_recv(int fd, char *buf, int len)
  • tls_u_recv_timeout (function) progs/tls_u/tls_u_port.c:44 int tls_u_recv_timeout(int fd, char *buf, int len, unsigned long ms)
  • tls_u_close (function) progs/tls_u/tls_u_port.c:55 void tls_u_close(int fd)
  • tls_free_fd (function) progs/tls_u/tls_u_port.c:66 void tls_free_fd(int fd); -- Session-aware close for multi-fetch processes (freedom follows redirects and linked stylesheets, reusing the lowest...
  • tls_close (function) progs/tls_u/tls_u_port.c:67 void tls_close(int fd) -- Session-aware close for multi-fetch processes (freedom follows redirects and linked stylesheets, reusing the lowest...
  • tls_now_days (function) progs/tls_u/tls_u_port.c:72 long tls_now_days(void)
  • tls_random (function) progs/tls_u/tls_u_port.c:78 void tls_random(unsigned char *out, unsigned len)
  • u_raw_syscall3 (function) progs/tls_u/tls_u_port.c:99 static long u_raw_syscall3(long n, long a1, long a2, long a3)
  • parse_quad (function) progs/tls_u/tls_u_port.c:122 static int parse_quad(const char *s, unsigned *ip_out) -- Strict dotted-quad parser (clang-tidy cert-err34-c: sscanf %u has undefined overflow and accepts whitespace/sign, so...
  • tls_u_resolve (function) progs/tls_u/tls_u_port.c:147 int tls_u_resolve(const char *host, unsigned *ip_out)
  • answer (function) progs/tls_u/tls_u_port.c:163 * answer (some resolvers go IPv6-only on the first query). */ memset(&hints, 0, sizeof(hints));
  • net_dns_resolve (function) progs/tls_u/tls_u_port.c:183 int net_dns_resolve(const char *host) -- freedom's resolver name: kernel DNS value semantics (u32 host order, * -1 on failure).

Next: API_p18.md

Start

Wiki

Agent Docs

Recipes

Clone this wiki locally