Commit Graph

477 Commits

Author SHA1 Message Date
Rustem Gimadutdinov (rgimad)
d82e0a30b4 fixed vulnerabilities in sysfn 18.11 and 36, now user applications cannot corrupt kernel memory via invalid buffer address
git-svn-id: svn://kolibrios.org@8598 a494cfbc-eb01-0410-851d-a64ba20cac60
2021-02-21 09:59:47 +00:00
Rustem Gimadutdinov (rgimad)
906e6d8dce is_region_userspace: removed extra condition which caused incorrect behavior of boxlib menu in hexedit and rtfread (cuz it uses address 0 i didnt know:D )
git-svn-id: svn://kolibrios.org@8493 a494cfbc-eb01-0410-851d-a64ba20cac60
2020-12-29 13:45:08 +00:00
Rustem Gimadutdinov (rgimad)
7b4bf97ec8 is_region_userspace: refactoring and fix
git-svn-id: svn://kolibrios.org@8329 a494cfbc-eb01-0410-851d-a64ba20cac60
2020-12-05 19:56:25 +00:00
673259b909 kernel: Protect OS threads from terminating by sf18.2.
git-svn-id: svn://kolibrios.org@8270 a494cfbc-eb01-0410-851d-a64ba20cac60
2020-11-28 12:57:10 +00:00
Rustem Gimadutdinov (rgimad)
af4695e15c fix return value from .addr_error in sysfn 26.2 , 9
git-svn-id: svn://kolibrios.org@8249 a494cfbc-eb01-0410-851d-a64ba20cac60
2020-11-24 14:20:23 +00:00
Rustem Gimadutdinov (rgimad)
2a0073bdfb fix prior
git-svn-id: svn://kolibrios.org@8248 a494cfbc-eb01-0410-851d-a64ba20cac60
2020-11-24 13:27:11 +00:00
Rustem Gimadutdinov (rgimad)
4e919c4eb5 SysFn 18.13 security fix: now apps cannot destroy kernel memory via passing illegal address in ecx
Update docs on SysFn 18.13

git-svn-id: svn://kolibrios.org@8247 a494cfbc-eb01-0410-851d-a64ba20cac60
2020-11-24 12:49:42 +00:00
Rustem Gimadutdinov (rgimad)
5d4528238c SysFn 9 security fix: now apps cannot destroy kernel memory via passing illegal address in ebx
Update docs on SysFn 9

git-svn-id: svn://kolibrios.org@8246 a494cfbc-eb01-0410-851d-a64ba20cac60
2020-11-23 18:52:56 +00:00
Rustem Gimadutdinov (rgimad)
efa84a263d fix is_region_userspace (worked incorrectly for e.g 0xFFFFFFFF)
git-svn-id: svn://kolibrios.org@8216 a494cfbc-eb01-0410-851d-a64ba20cac60
2020-11-17 20:00:28 +00:00
c2b9713bb9 Fix r8139: delay_ms was 10x slower when using HPET.
git-svn-id: svn://kolibrios.org@8176 a494cfbc-eb01-0410-851d-a64ba20cac60
2020-11-11 22:28:04 +00:00
Rustem Gimadutdinov (rgimad)
9508cfa2b7 added is_region_userspace, fix sysfn 26.2 address security checks
git-svn-id: svn://kolibrios.org@8160 a494cfbc-eb01-0410-851d-a64ba20cac60
2020-11-07 16:42:34 +00:00
Rustem Gimadutdinov (rgimad)
160a8c789a SysFn 26.2 security fix: now apps cannot destroy kernel memory via passing illegal address to this sysfn
git-svn-id: svn://kolibrios.org@8158 a494cfbc-eb01-0410-851d-a64ba20cac60
2020-11-06 23:15:44 +00:00
dd55ceaa16 kernel: Make delay_ms use HPET when available.
I got a laptop that has timer on channel 1 of PIT that doesn't tick.

git-svn-id: svn://kolibrios.org@8139 a494cfbc-eb01-0410-851d-a64ba20cac60
2020-11-05 19:53:54 +00:00
1919b8efdc fix r8111: Map acpi_apic_base page before access.
git-svn-id: svn://kolibrios.org@8119 a494cfbc-eb01-0410-851d-a64ba20cac60
2020-10-27 19:32:57 +00:00
a9121a0da9 kernel: Split acpi.inc and hpet.inc from init.inc.
Also, replace some hardcoded constants with macros.

git-svn-id: svn://kolibrios.org@8111 a494cfbc-eb01-0410-851d-a64ba20cac60
2020-10-21 14:23:51 +00:00
aaf1ac4439 Assert sizeof.APPDATA=256, use it instead of hardcoded 256 value.
git-svn-id: svn://kolibrios.org@8093 a494cfbc-eb01-0410-851d-a64ba20cac60
2020-10-12 02:54:44 +00:00
ab9b1ebb4a uefi4kos: Read config and kernel files from the disk.
* Now there is a config file with boot options, example included.
* Config, kernel and ramdisk are loaded from the disk, not compiled in.
* DEVICES.DAT file is also optionally loaded from the disk.
* Also, move the loader to /kernel/trunk/bootloader/uefi4kos.

git-svn-id: svn://kolibrios.org@8092 a494cfbc-eb01-0410-851d-a64ba20cac60
2020-10-06 03:32:57 +00:00
f5e0f96e84 Add extended_primary_loader to autobuild.
* Build fat1x, fat32, cdfs, after_win loaders.
* Set use_lba=1 by default in fat32 loader.
* Build kolibri.raw: flash / hdd image.
* Add example config.ini file.
* Add an option (config file and screen) to not load ramdisk image.
* Add an option (config file only) to set /sys path.

Now you can boot without a ramdisk from a storage that is supported
by the kernel itself, i.e. without loadable drivers. Thus you can not
load the system without a ramdisk from SATA/AHCI and USB drives.

git-svn-id: svn://kolibrios.org@8091 a494cfbc-eb01-0410-851d-a64ba20cac60
2020-10-04 16:53:59 +00:00
bf38c73d0a kernel: don't use ramdisk if asked.
The blue screen is not aware of this option.

git-svn-id: svn://kolibrios.org@8089 a494cfbc-eb01-0410-851d-a64ba20cac60
2020-10-02 13:05:10 +00:00
5e4de2dfd1 Initialize APPDATA.{fd,bk}_ev fields for kernel threads.
This prevents crash in event.inc:RemoveEventTo because of
zero pointer dereference.

git-svn-id: svn://kolibrios.org@8087 a494cfbc-eb01-0410-851d-a64ba20cac60
2020-10-02 12:30:11 +00:00
d48c9cc35c Fix random boot issue: 'Failed to start first app'
Access to BOOT.dev variable was sometimes done with obsolete
offset from non-flat-kernel ages. If you are unlucky, the ramdisk
is not loaded and launcher app is not started.

git-svn-id: svn://kolibrios.org@8086 a494cfbc-eb01-0410-851d-a64ba20cac60
2020-10-02 12:26:08 +00:00
hidnplayr
9ab5b699d5 Improved readability, no semantic changes.
git-svn-id: svn://kolibrios.org@7965 a494cfbc-eb01-0410-851d-a64ba20cac60
2020-05-21 13:55:36 +00:00
cbceb320e8 kernel: Support more than one I/O APIC and 24 interrupts.
git-svn-id: svn://kolibrios.org@7733 a494cfbc-eb01-0410-851d-a64ba20cac60
2020-03-02 04:25:30 +00:00
8973200440 Fix compilation with extended_primary_loader.
git-svn-id: svn://kolibrios.org@7598 a494cfbc-eb01-0410-851d-a64ba20cac60
2019-03-11 21:33:33 +00:00
db8eddbd53 Enable xsave/xrstor, attempt 2.
git-svn-id: svn://kolibrios.org@7276 a494cfbc-eb01-0410-851d-a64ba20cac60
2018-05-13 00:16:10 +00:00
CleverMouse
43e84d7672 fix FPU after r7124 for other CPU configurations
git-svn-id: svn://kolibrios.org@7165 a494cfbc-eb01-0410-851d-a64ba20cac60
2018-02-19 16:35:45 +00:00
0e02132b9f Replace 'equ' macros with '=' ones.
They appear in symbols file.
They don't require parentheses.
They are shorter.

git-svn-id: svn://kolibrios.org@7136 a494cfbc-eb01-0410-851d-a64ba20cac60
2017-12-20 01:07:10 +00:00
368d42ffae Update BOOT_DATA structure and use it instead of all the BOOT_* vars.
git-svn-id: svn://kolibrios.org@7132 a494cfbc-eb01-0410-851d-a64ba20cac60
2017-12-17 02:12:53 +00:00
f208e0e454 Split bootbios.asm and kernel.asm.
* Move bios-related part of kernel.asm before B32 label to
  bootbios.asm file;
* Move bx_from_load, boot_dev and kernel_restart_bootblock variables
  to BOOT_* 0x9000 block;
* Update Tupfile.lua, Makefile, build.bat, build.sh accordingly;
* Now bios and uefi loaders can jump to very first byte of the kernel.

git-svn-id: svn://kolibrios.org@7129 a494cfbc-eb01-0410-851d-a64ba20cac60
2017-12-16 20:21:10 +00:00
9e6b9b61f7 Use xsave/xrestor if available, enable AVX* instructions.
git-svn-id: svn://kolibrios.org@7124 a494cfbc-eb01-0410-851d-a64ba20cac60
2017-12-05 05:24:21 +00:00
09684c0db9 Synchronize memmap.inc and const.inc, replace hardcoded numbers with macros.
git-svn-id: svn://kolibrios.org@7122 a494cfbc-eb01-0410-851d-a64ba20cac60
2017-11-29 22:03:58 +00:00
16d9a4a4bc Remove VRR code, mostly commented out anyway.
git-svn-id: svn://kolibrios.org@7121 a494cfbc-eb01-0410-851d-a64ba20cac60
2017-11-29 00:15:25 +00:00
dbe9918dc6 Return capacity and bytes per sector of bios disks
This patch makes bd_querymedia return valid Capacity and SectorSize
values. Bios disks detection code saves the values to extended
BiosDiskData structure, bd_querymedia copies them to DISKMEDIAINFO.


git-svn-id: svn://kolibrios.org@6843 a494cfbc-eb01-0410-851d-a64ba20cac60
2017-01-21 00:14:05 +00:00
a7cb2f3691 Set CR0.AM bit
Allow applications to get Alignment Check exception


git-svn-id: svn://kolibrios.org@6817 a494cfbc-eb01-0410-851d-a64ba20cac60
2016-12-26 23:29:27 +00:00
pathoswithin
ee04f7ac02 more unicode functions
git-svn-id: svn://kolibrios.org@6800 a494cfbc-eb01-0410-851d-a64ba20cac60
2016-12-18 03:13:18 +00:00
Sergey Semyonov (Serge)
6cbd453d52 kernel: fix for #5350
git-svn-id: svn://kolibrios.org@6593 a494cfbc-eb01-0410-851d-a64ba20cac60
2016-10-14 17:51:58 +00:00
pathoswithin
e47ae79991 fix click on window activation, fix background redraw, cleaning
git-svn-id: svn://kolibrios.org@6585 a494cfbc-eb01-0410-851d-a64ba20cac60
2016-10-10 11:31:49 +00:00
pathoswithin
31fad3ee4a UTF-8 file path input, unicode names for apps and libs
git-svn-id: svn://kolibrios.org@6502 a494cfbc-eb01-0410-851d-a64ba20cac60
2016-08-25 19:30:08 +00:00
pathoswithin
5f44c836b1 onscreen log output fix
git-svn-id: svn://kolibrios.org@6501 a494cfbc-eb01-0410-851d-a64ba20cac60
2016-08-25 19:18:19 +00:00
pathoswithin
ee14b53b33 sysfunction 70 cleaning
git-svn-id: svn://kolibrios.org@6464 a494cfbc-eb01-0410-851d-a64ba20cac60
2016-07-29 11:12:13 +00:00
Sergey Semyonov (Serge)
a316af7413 kernel: new app loader
git-svn-id: svn://kolibrios.org@6333 a494cfbc-eb01-0410-851d-a64ba20cac60
2016-03-13 06:08:07 +00:00
pathoswithin
a22e6458e8 update sysfunction 47
git-svn-id: svn://kolibrios.org@6272 a494cfbc-eb01-0410-851d-a64ba20cac60
2016-02-21 00:05:15 +00:00
Sergey Semyonov (Serge)
06644f770e kernel: framebuffers code
git-svn-id: svn://kolibrios.org@6263 a494cfbc-eb01-0410-851d-a64ba20cac60
2016-02-20 09:57:44 +00:00
Sergey Semyonov (Serge)
50e97c60fa kernel: restart, reboot and power off
git-svn-id: svn://kolibrios.org@6244 a494cfbc-eb01-0410-851d-a64ba20cac60
2016-02-18 02:03:38 +00:00
hidnplayr
cbca315c7d IPv4: Dont crash when there is no route to host.
git-svn-id: svn://kolibrios.org@6122 a494cfbc-eb01-0410-851d-a64ba20cac60
2016-02-01 19:43:10 +00:00
CleverMouse
a64323c296 always install IDE interrupt handler
git-svn-id: svn://kolibrios.org@6015 a494cfbc-eb01-0410-851d-a64ba20cac60
2015-12-30 15:48:01 +00:00
hidnplayr
c81c3fbd4f Cosmetical changes in network code, updated TCP timer code.
git-svn-id: svn://kolibrios.org@6011 a494cfbc-eb01-0410-851d-a64ba20cac60
2015-12-27 15:37:31 +00:00
GerdtR
5a795de357 Remove unnecessary redrawing windows.
git-svn-id: svn://kolibrios.org@5870 a494cfbc-eb01-0410-851d-a64ba20cac60
2015-10-31 21:43:10 +00:00
GerdtR
04b4f40454 Bug fixes, change the values of constants window position relative to the other.
git-svn-id: svn://kolibrios.org@5865 a494cfbc-eb01-0410-851d-a64ba20cac60
2015-10-27 20:29:29 +00:00
pathoswithin
cb95c307f3 Nonliniear mouse control option
git-svn-id: svn://kolibrios.org@5853 a494cfbc-eb01-0410-851d-a64ba20cac60
2015-10-20 23:01:43 +00:00