Commit Graph

139 Commits

Author SHA1 Message Date
9c9aeabc97 Don't use in constants file 2025-07-28 10:41:45 +02:00
0e4c64698f Adds ftell(), removed reading from file in fseek/ftell tests (since that modifies pointer location) 2025-07-28 10:16:00 +02:00
a803a216b1 Adds fread(), fseek() 2025-07-28 10:05:16 +02:00
a8bc8cfa2e Adds constants DEF_MODE_FILE and DEF_MODE_DIR 2025-07-27 21:45:32 +02:00
f18de90868 1) REALLY fix strcat crash (git restored wrong file in previous commit) 2) fopen: less labels ffs 2025-07-27 21:17:59 +02:00
ca6d6e6d31 Fix strcat SIGSEGV crash 2025-07-27 21:11:53 +02:00
0d1a125782 Fix return value comment of fgettype 2025-07-27 16:29:02 +02:00
c40a59b4ff Adds lstat() 2025-07-27 16:25:23 +02:00
0c5bbde4a4 fgettype() test: Skip useless tests (lea/cmp/cmove) if correct filetype was detected 2025-07-27 15:08:07 +02:00
310c199942 stat buffer fields: add comments (unsigned) and '4 bytes' for non-qword values. 2025-07-27 14:52:42 +02:00
40583103a1 Add (basic) tests for stat(), fgettype(), fgetmod() 2025-07-27 14:49:24 +02:00
efd35b2957 fstatat -> stat, fgettype/fgetmod: rax->eax (st_mode is dword, not qword) 2025-07-27 14:19:09 +02:00
dbf2af0253 Adds fgetat,fgettype,fgetmod. Seperates constants to multiple files 2025-07-27 14:11:44 +02:00
5b6831a501 __INTERNAL_fmt: Exit if syscall NR_write fails (which is very likely if called through fwrite with an invalid FD) 2025-07-26 01:10:34 +02:00
e8b47fff6d __INTERNAL_fmt: Assure correct stack arguments are loaded if FD=stderr 2025-07-26 01:07:42 +02:00
69d7a52c62 Adds eprintf (printf but print to stderr) 2025-07-26 00:57:30 +02:00
8a18695328 __INTERNAL_fmt: Add description + return with errno -EBADF if FD is lower than FD_stdout (1) 2025-07-26 00:50:09 +02:00
fdef1ed7b6 fwrite test 4: do not reopen file 2025-07-26 00:21:37 +02:00
6b45b84ab1 printf->__INTERNAL_fmt. FD passed via RAX. fwrite now allows specifiers and variable arguments. 2025-07-26 00:20:25 +02:00
d713fdf556 Fix minor test message mistakes 2025-07-25 14:45:18 +02:00
5434e48ee4 Adds fwrite() 2025-07-25 14:16:20 +02:00
a7c1c6bdb5 Add *.txt to make clean 2025-07-25 12:02:28 +02:00
31bda18649 Fix test message fopen2 (==>fopen1) 2025-07-25 12:01:43 +02:00
1fac6f92ef Adds fopen() and fexist() and tests for all existing functions 2025-07-25 11:56:13 +02:00
490f287c09 Add tests for umask_get() and umask_set() 2025-07-25 11:13:25 +02:00
511be406be Add tests for existing functions (except file functions) 2025-07-25 11:04:41 +02:00
6cfb1b6f5f printf fix: Decrease rdi if padding is not 0 and specifier is invalid (assure '%' is printed) 2025-07-24 22:20:47 +02:00
bb69efcc37 Update printf test 1; Add '%9l'; I realized that I fixed '%0(invalid)' but that in the same scenario, non-zero would still cause that specific bug 2025-07-24 22:19:31 +02:00
5c395894c6 Remove '(root)/file.asm 2025-07-24 21:09:22 +02:00
1f548fddf5 Add tests for strlen 2025-07-24 21:09:07 +02:00
7c46988508 FIX printf: '%0(invalid)' as-is (don't exclude '%') 2025-07-24 20:32:49 +02:00
89b50c83ba Fix last perror test 2025-07-24 16:30:06 +02:00
715f944b6b Fix return value of perror (original -errno was returned as errno) 2025-07-24 16:27:34 +02:00
eb1c714127 Optimize umask_get (make it a leaf function) 2025-07-24 15:23:25 +02:00
c2535d9240 file.asm: Make sure constants are defined as octal 2025-07-24 15:10:38 +02:00
ee0fe3b304 Add missing defined functions in src/tests.asm 2025-07-24 15:06:34 +02:00
58190e3f48 Remove leftover file 'test' (used in silent umask tests) 2025-07-24 14:56:35 +02:00
fc297959ab Start writing file functions 2025-07-24 14:56:12 +02:00
19cea5642b perror: don't overwrite rax if rax=0 (mov rax,r9 before .quit) 2025-07-22 15:57:53 +02:00
bc5e6e2342 Adds perror() 2025-07-22 15:54:25 +02:00
8f4f0a83f5 FIX printf: NL and TAB not being counted in amount of printed chars 2025-07-22 06:55:08 +02:00
d15ed616e9 atoi: Prevent (unsigned) overflow 2025-07-22 06:45:46 +02:00
53b5314d68 Fix expected return value for 1st printf test 2025-07-21 17:35:59 +02:00
c69bd8332e Add tests print(),puts(), start adding tests for printf() 2025-07-21 17:20:55 +02:00
03303a303e Wrappers (%define) for macro assert 2025-07-21 16:55:42 +02:00
d167dfdcdf Add TEST clampu, better test result overview 2025-07-21 16:40:45 +02:00
e8b48e9939 FIX unsigned test outputs: %d -> %u 2025-07-21 16:33:07 +02:00
51fc8d5608 FIX tests minu,maxu: ...UEqual, not ...IEqual 2025-07-21 16:30:19 +02:00
1b3f4c1b99 TEST clamp() 2025-07-21 16:29:22 +02:00
9641ed1480 TEST max,maxu (shameless copy,paste,replace) 2025-07-21 16:23:40 +02:00