Commit Graph

2136 Commits

Author SHA1 Message Date
Jonas 'Sortie' Termansen 794cfd057a Add keyboard number selection to chvideomode(1). 2016-01-26 21:17:09 +01:00
Jonas 'Sortie' Termansen 5ba7ce6802 Add backwards support to pager(1). 2016-01-26 21:17:09 +01:00
Jonas 'Sortie' Termansen c8315c1ac2 Add extfs s_last_mounted support. 2016-01-26 21:17:09 +01:00
Jonas 'Sortie' Termansen e89dc04674 Add extfs support for d_type. 2016-01-26 21:17:08 +01:00
Jonas 'Sortie' Termansen 624ceff900 Add _PC_NAME_MAX support. 2016-01-26 21:17:08 +01:00
Jonas 'Sortie' Termansen 8b03a9ab94 Update printf family to current coding conventions. 2016-01-26 21:17:08 +01:00
Jonas 'Sortie' Termansen b5f9876089 Remove unnecessary libg.a. 2016-01-26 21:17:08 +01:00
Jonas 'Sortie' Termansen 14c27ff3fa Preclean only in tix-build when the port is dirty. 2016-01-26 21:17:08 +01:00
Jonas 'Sortie' Termansen 9e6876ff14 Split fdio into multiple files. 2016-01-26 19:01:36 +01:00
Jonas 'Sortie' Termansen 3320e29c95 Remove unused libc signal assembly files. 2016-01-26 19:01:36 +01:00
Jonas 'Sortie' Termansen 4d2901b90e Split stdin, stdout and stderr into their own files. 2016-01-26 19:01:36 +01:00
Jonas 'Sortie' Termansen 2e4b15daed Simplify directory reading. 2016-01-26 18:42:54 +01:00
Jonas 'Sortie' Termansen 56085108b6 Use fflush_unlocked as stdio's fflush_indirect.
exit(3) already locks the file before calling fflush_indirect.
2016-01-26 18:39:49 +01:00
Jonas 'Sortie' Termansen bb73362d23 Create stdio buffers at FILE creation time.
This removes support for user-supplied buffers with setvbuf.
2016-01-26 18:39:48 +01:00
Jonas 'Sortie' Termansen fe067c5150 Refactor boot page availability testing. 2016-01-26 17:51:25 +01:00
Jonas 'Sortie' Termansen cfb9dd6045 Remove poorly implemented kernel symbol loading. 2016-01-26 17:45:06 +01:00
Jonas 'Sortie' Termansen 08bac6e3f6 Add kernelinfo firmware string. 2016-01-26 17:45:06 +01:00
Jonas 'Sortie' Termansen 328f4e1fd6 Add features to ls(1) and fix implementation issues.
New options:

  -1   Disable columnizing.

  -c   Sort by file status change time.

  -C   Column directory entries.

  -h   Show file sizes with magnitude suffixes such as 42.3K.

  -r   Sort entries in the opposite order.

  -R   Recursively list directory contents.

  -S   Sort by file size in decreasing order.

  -u   Sort by access time.

  --color=always|auto|never
       Control whether colorizing is enabled.

The output is now natively columnized instead of running a column(1)
subprocess. Multiple operands are now implemented correctly (directory
contents are columned separately rather than their concatenation, the name
of each directory is printed prior to its content, ...). The file owner and
group names are now shown rather than a hard-coded root. Long listings are
now properly aligned. Mixing file and directory operands works correctly
now. Columnizing is now vertical rather than across. Clean up the source
code and remove cruft. Stat information on directory entries are read once
only now, which which fixes an incosistent sort race condition when sorting
according to lstat. Move to the openat paradigm.
2016-01-26 17:45:06 +01:00
Jonas 'Sortie' Termansen 224c6595bc Build ports with -Werror=implicit-function-declaration. 2016-01-26 17:13:57 +01:00
Jonas 'Sortie' Termansen d879c2343b Build ports with -Werror=format. 2016-01-26 17:12:56 +01:00
Jonas 'Sortie' Termansen 1e26626cc2 Silence extfs on unmount. 2016-01-25 17:42:26 +01:00
Jonas 'Sortie' Termansen 01afa43fb0 Improve extfs incoming message reliability. 2016-01-25 17:42:26 +01:00
Jonas 'Sortie' Termansen ec990882b0 Limit extfs device cache to 10% of system memory. 2016-01-25 17:42:26 +01:00
Jonas 'Sortie' Termansen 4839a97d91 Add colormake support for cc and c++. 2016-01-25 17:42:26 +01:00
Jonas 'Sortie' Termansen ba5af691f9 Add find(1) symbolic link support. 2016-01-25 17:42:25 +01:00
Jonas 'Sortie' Termansen 4333b2e695 Add ln(1) target directory support. 2016-01-25 17:42:25 +01:00
Jonas 'Sortie' Termansen 63d42cd686 Add fstab(3). 2016-01-25 17:42:25 +01:00
Jonas 'Sortie' Termansen 360eaaf527 Declare file in the set function of setgetend functions. 2016-01-25 17:42:25 +01:00
Jonas 'Sortie' Termansen 4b1079510b Execute only programs with an executable bit set. 2016-01-25 17:39:57 +01:00
Jonas 'Sortie' Termansen 9ccfdb9990 Modernize tix temporary files and directory creation. 2016-01-25 17:39:57 +01:00
Jonas 'Sortie' Termansen beaa824076 Store tixinfo and manifest on tix install. 2016-01-25 17:39:57 +01:00
Jonas 'Sortie' Termansen 8174ab7b30 Remove tix util.h cruft. 2016-01-25 17:39:57 +01:00
Jonas 'Sortie' Termansen e5590985d5 Restore tix repository support. 2016-01-25 17:39:57 +01:00
Jonas 'Sortie' Termansen f4560a9527 Remove tix tools command line interface cruft.
This removes the ability to override standard shell utilities using
environment variables. The standard names are invoked unconditionally and
can be overridden using the standard approach of adding replacements to the
PATH. Additionally environment variables like PREFIX and HOST are no longer
honored as defaults for the --prefix and --host options. These features are
removed because they've never been used and cause more trouble than they
are worth.

The tix collection option now defaults to the root directory to simplify
common invocations. The tix-build prefix also now defaults to the empty
prefix.

Support installing multiple packages at once with tix-install.

Tighten file and directory creation modes while here.

Add --generation for forward compatibility.

Silence tix-collection creation.

Fix uninitialized getline invocations.

Fix porttix-create buffer overflow.
2016-01-25 17:39:57 +01:00
Jonas 'Sortie' Termansen 257419f6fa Remove libm exec-include directory. 2016-01-25 17:39:57 +01:00
Jonas 'Sortie' Termansen 2e3d7c45af Add paging no-execute and write protection support.
Enable the NX bit on x86_64 and set if not PROT_EXEC and enable the write
protection mode (CR0.WP) that disables the default behavior where the kernel
is able to write to read-only memory. Fix kernel broken assumptions it can
access read-only memory and take care to never set PROT_KWRITE on user-space
pages unless PROT_WRITE is also set, otherwise user-space will be able to
write to read-only memory.

This achieves X^W in the whole system except for the core kernel itself as
it is currently don't know the purpose of pages when identity mapping the
first 4 MiB.
2016-01-25 17:39:57 +01:00
Jonas 'Sortie' Termansen c8bbd6e0aa Restore terminal when games quit. 2016-01-25 16:30:43 +01:00
Jonas 'Sortie' Termansen bff1265d62 Add termios(2). 2016-01-25 15:47:40 +01:00
Jonas 'Sortie' Termansen 8f233b4a10 Add console backspace bold and underline support.
Combine textbuffer char and attr concepts while here.
2016-01-23 01:02:50 +01:00
Jonas 'Sortie' Termansen 9297ff2a20 Add PS/2 mouse driver. 2016-01-23 00:50:53 +01:00
Jonas 'Sortie' Termansen 306709fc4a Add PS/2 controller driver. 2016-01-23 00:50:53 +01:00
Meisaka Yukara 3d48c7f658 Fix firing of absolute clocks. 2016-01-22 21:17:05 +01:00
Jonas 'Sortie' Termansen dbe6b32b1f Fix scanf integer parsing. 2016-01-22 20:01:33 +01:00
Jonas 'Sortie' Termansen 2e9153cdb9 Fix inet_addr and inet_ntoa not being part of _SORTIX_SOURCE. 2016-01-22 20:01:33 +01:00
Jonas 'Sortie' Termansen dc07435002 Fix closefrom(2) infinite loop. 2016-01-22 20:01:32 +01:00
Jonas 'Sortie' Termansen 9a59ef2313 Fix select(2) conformance issues. 2016-01-22 20:01:32 +01:00
Jonas 'Sortie' Termansen b2f78fb4e1 Fix trianglix buffer underflow. 2016-01-22 20:01:32 +01:00
Jonas 'Sortie' Termansen fbfe159046 Add crypt_checkpass(3) and crypt_newhash(3). 2016-01-09 02:54:51 +01:00
Jonas 'Sortie' Termansen 53711549af Add bcrypt_checkhash(3) and bcrypt_newhash(3). 2016-01-09 02:54:51 +01:00
Jonas 'Sortie' Termansen ff8b2be515 Implement CLOCK_THREAD_CPUTIME_ID and CLOCK_THREAD_SYSTIME_ID. 2016-01-09 02:28:44 +01:00