Commit Graph

521 Commits

Author SHA1 Message Date
59315b183d [kernel] Fix reading from empty board buffer (sf63.2)
Syscall 63.2, reading from the board buffer, was overwriting registers
edx and ebp when the buffer was empty. Now it sets eax and ebx according
to the kernel API.

Because of this ancient bug BOARD checks the status of sf63.2 syscall
this way:
        mcall   63, 2
        cmp     ebx, 1
        jne     no_data
        ; when the buffer is empty, ebx is untouched, i.e. still 2, haha
        ; edx and ebp are destroyed, the code is lucky not to use them

By the way, the bug was found using umka tool.

git-svn-id: svn://kolibrios.org@9897 a494cfbc-eb01-0410-851d-a64ba20cac60
2023-01-30 03:33:03 +00:00
a9d195b964 Rename fields in SYSCALL_STACK struct: _eax -> eax, etc
git-svn-id: svn://kolibrios.org@9831 a494cfbc-eb01-0410-851d-a64ba20cac60
2022-06-05 14:41:51 +00:00
Doczom
4b862c1c0b KERNEL: reducing the use of current_slot_idx
git-svn-id: svn://kolibrios.org@9828 a494cfbc-eb01-0410-851d-a64ba20cac60
2022-06-03 23:34:04 +00:00
aa4154894c [kernel] Add is_string_userspace func, like is_region_userspace
git-svn-id: svn://kolibrios.org@9823 a494cfbc-eb01-0410-851d-a64ba20cac60
2022-05-31 07:27:00 +00:00
Doczom
0e38558cb0 fix bug in free group of port(46 sysf) in deleting thread
git-svn-id: svn://kolibrios.org@9743 a494cfbc-eb01-0410-851d-a64ba20cac60
2022-03-19 16:20:29 +00:00
Doczom
8708293b8f small update 46 system function(no tested!)
git-svn-id: svn://kolibrios.org@9742 a494cfbc-eb01-0410-851d-a64ba20cac60
2022-03-18 04:09:59 +00:00
Doczom
182f6ade61 small update copyright year in kernel
git-svn-id: svn://kolibrios.org@9715 a494cfbc-eb01-0410-851d-a64ba20cac60
2022-02-12 17:27:41 +00:00
Doczom
39780d1f65 delete APPDATA.mem_start
git-svn-id: svn://kolibrios.org@9710 a494cfbc-eb01-0410-851d-a64ba20cac60
2022-02-09 18:09:54 +00:00
Doczom
707dc7c2e6 delete TASKDATA
git-svn-id: svn://kolibrios.org@9709 a494cfbc-eb01-0410-851d-a64ba20cac60
2022-02-09 17:07:51 +00:00
Doczom
19347417f0 replacing TASK DATA.pid with APPDATA.tid
git-svn-id: svn://kolibrios.org@9692 a494cfbc-eb01-0410-851d-a64ba20cac60
2022-02-06 20:33:29 +00:00
Doczom
4afc0dd84b replacing TASKDATA.event_mask with APPDATA.event_mask and cleared code
git-svn-id: svn://kolibrios.org@9614 a494cfbc-eb01-0410-851d-a64ba20cac60
2022-01-11 20:38:19 +00:00
Doczom
df70a59fd5 add APPDATA.state for delete TASKDATA
git-svn-id: svn://kolibrios.org@9613 a494cfbc-eb01-0410-851d-a64ba20cac60
2022-01-11 10:50:30 +00:00
Doczom
2470cf023c add APPDATA.state for delete TASKDATA
git-svn-id: svn://kolibrios.org@9612 a494cfbc-eb01-0410-851d-a64ba20cac60
2022-01-10 22:29:14 +00:00
Doczom
b1621a3797 add APPDATA.wnd_number
git-svn-id: svn://kolibrios.org@9608 a494cfbc-eb01-0410-851d-a64ba20cac60
2022-01-10 16:52:37 +00:00
Doczom
2aee4bdf6a replacing TASKDATA.mem_start with APPDATA.memstart
git-svn-id: svn://kolibrios.org@9605 a494cfbc-eb01-0410-851d-a64ba20cac60
2022-01-09 11:37:32 +00:00
Doczom
2db4916440 fix cpu_usage
git-svn-id: svn://kolibrios.org@9592 a494cfbc-eb01-0410-851d-a64ba20cac60
2022-01-08 01:28:53 +00:00
Doczom
3d6209fb37 fix cpu_usage
git-svn-id: svn://kolibrios.org@9591 a494cfbc-eb01-0410-851d-a64ba20cac60
2022-01-07 23:03:51 +00:00
Doczom
bb2c454ebe replacing TASKDATA.cpu_usage with APPDATA.cpu_usage
git-svn-id: svn://kolibrios.org@9590 a494cfbc-eb01-0410-851d-a64ba20cac60
2022-01-07 21:53:56 +00:00
Doczom
db7f673018 add 3 constants
git-svn-id: svn://kolibrios.org@9571 a494cfbc-eb01-0410-851d-a64ba20cac60
2022-01-04 18:51:19 +00:00
f12d4adc7d [KERNEL] - removed commented outdated read_floppy_file function
- removed setmouse function that doesnt do anything
- redmousepos moved from kernel.asm to gui/mouse.inc
- small style fixes


git-svn-id: svn://kolibrios.org@9514 a494cfbc-eb01-0410-851d-a64ba20cac60
2021-12-28 15:19:24 +00:00
c0671d602c [KERNEL] kernel.asm: clean commented outdated stuff, fix prior
git-svn-id: svn://kolibrios.org@9488 a494cfbc-eb01-0410-851d-a64ba20cac60
2021-12-27 15:42:05 +00:00
c8ddc27015 [KERNEL] Sysfn 15, 25, 39 (working with background graphics) moved from kernel.asm to gui/background.inc file
git-svn-id: svn://kolibrios.org@9486 a494cfbc-eb01-0410-851d-a64ba20cac60
2021-12-27 15:34:18 +00:00
f7761a485b [KERNEL] Move sysfn 1, 4, 13, 38 implementations from kernel.asm to window.inc
Fix comments style in window.inc
Cleanup some outdated & unused commented stuff in data32.inc

git-svn-id: svn://kolibrios.org@9477 a494cfbc-eb01-0410-851d-a64ba20cac60
2021-12-26 13:18:33 +00:00
d92af710b5 [KERNEL] Use common stub undefined_syscall instead of paleholder
git-svn-id: svn://kolibrios.org@9476 a494cfbc-eb01-0410-851d-a64ba20cac60
2021-12-26 11:12:56 +00:00
3d99a055b8 [KERNEL] Add sysfn 39.3 - copy rect of background image to buffer.
Previously was only 39.2 that reads one pixel from background image.
(39.2 is shomehow useless due to big context switching overhead if you trying to read some area of pixels using 39.2)

git-svn-id: svn://kolibrios.org@9458 a494cfbc-eb01-0410-851d-a64ba20cac60
2021-12-22 17:10:59 +00:00
Doczom
4003f26194 delete 43 sysfunction
git-svn-id: svn://kolibrios.org@9279 a494cfbc-eb01-0410-851d-a64ba20cac60
2021-11-16 18:54:17 +00:00
Doczom
7fa9473c69 small clean code
git-svn-id: svn://kolibrios.org@9268 a494cfbc-eb01-0410-851d-a64ba20cac60
2021-11-14 19:15:56 +00:00
Magomed Kostoev (mkostoevr)
0b73fe657f [KERNEL] Add test framework
git-svn-id: svn://kolibrios.org@9249 a494cfbc-eb01-0410-851d-a64ba20cac60
2021-11-04 23:52:56 +00:00
Doczom
4f072de650 update
git-svn-id: svn://kolibrios.org@9224 a494cfbc-eb01-0410-851d-a64ba20cac60
2021-10-23 17:11:57 +00:00
Doczom
4f59e32470 fix bug in my fix bug
git-svn-id: svn://kolibrios.org@9223 a494cfbc-eb01-0410-851d-a64ba20cac60
2021-10-23 16:05:08 +00:00
Doczom
bb36197cd2 fix bug http://bugs.kolibrios.org/view.php?id=145 in sf 4
git-svn-id: svn://kolibrios.org@9222 a494cfbc-eb01-0410-851d-a64ba20cac60
2021-10-23 15:53:35 +00:00
83176ac8ef kernel: Fix window redraw after 1px move.
If
 - window A is above window B, and
 - window A has been moved,
then window B receives a redraw event.

But if that move was 1px right or down, window B didn't receive an event
because of off-by-one error. Now it's fixed.

git-svn-id: svn://kolibrios.org@9221 a494cfbc-eb01-0410-851d-a64ba20cac60
2021-10-18 16:23:18 +00:00
954246b1b7 Merge kolibri-ahci into trunk
git-svn-id: svn://kolibrios.org@9183 a494cfbc-eb01-0410-851d-a64ba20cac60
2021-09-09 11:38:38 +00:00
b6f769987c kernel: Check for base+len overflow in is_region_userspace
git-svn-id: svn://kolibrios.org@9045 a494cfbc-eb01-0410-851d-a64ba20cac60
2021-07-09 09:22:44 +00:00
Magomed Kostoev (mkostoevr)
a7ae55240b [asmxygen] Test doxygen generation on is_region_userspace() function
git-svn-id: svn://kolibrios.org@8962 a494cfbc-eb01-0410-851d-a64ba20cac60
2021-06-29 09:37:40 +00:00
0f675e4534 [KERNEL] use constants instead of hardcoded values, other small fixes
git-svn-id: svn://kolibrios.org@8876 a494cfbc-eb01-0410-851d-a64ba20cac60
2021-06-19 08:41:09 +00:00
2359531a17 [KERNEL] #3 Preparing to merge legacy TASKDATA into APPDATA:
- get rid of CURRENT_TASK
- to APPDATA added new fields which will be used instead of TASKDATA's
- other small fixes

git-svn-id: svn://kolibrios.org@8869 a494cfbc-eb01-0410-851d-a64ba20cac60
2021-06-17 09:41:16 +00:00
d4bf03befc [KERNEL] #2 Preparing to merge legacy TASKDATA into APPDATA:
- rename event_mask in APPDATA to occured_events, cause TASKDATA already has event_mask and they have different meaning and usage
- small fixes

git-svn-id: svn://kolibrios.org@8867 a494cfbc-eb01-0410-851d-a64ba20cac60
2021-06-16 13:57:17 +00:00
9cdec89085 [KERNEL] Preparing to merge legacy TASKDATA into APPDATA:
- now doesnt use TASK_COUNT, now uses [thread_count] global instead of it
- update come copyrights

git-svn-id: svn://kolibrios.org@8866 a494cfbc-eb01-0410-851d-a64ba20cac60
2021-06-16 10:04:10 +00:00
f3f40df401 [KERNEL] Refactoring:
- optimize struct zeroing in sys32.inc 
- set_app_param: delete setting completely unused APPDATA.event_filter (also make this field reserved)
- update some copyringhs
- other small fixes

git-svn-id: svn://kolibrios.org@8858 a494cfbc-eb01-0410-851d-a64ba20cac60
2021-06-15 16:24:33 +00:00
Doczom
c080568a52 fixed vulnerability (kernel memory rewrite) in sysfn 4
git-svn-id: svn://kolibrios.org@8715 a494cfbc-eb01-0410-851d-a64ba20cac60
2021-05-09 14:17:55 +00:00
Doczom
5376120685 fixed vulnerability (reading kernel memory from userspace) in sysfn 7, 15.5 and 65
git-svn-id: svn://kolibrios.org@8714 a494cfbc-eb01-0410-851d-a64ba20cac60
2021-05-09 14:02:32 +00:00
Doczom
da3163d11b fixed vulnerability (reading kernel memory from userspace) in sysfn 47
git-svn-id: svn://kolibrios.org@8713 a494cfbc-eb01-0410-851d-a64ba20cac60
2021-05-09 13:27:00 +00:00
c7a8498e42 fixed vulnerability (reading kernel memory from userspace) in sysfn25
git-svn-id: svn://kolibrios.org@8675 a494cfbc-eb01-0410-851d-a64ba20cac60
2021-04-22 19:59:52 +00:00
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
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
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
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
2a0073bdfb fix prior
git-svn-id: svn://kolibrios.org@8248 a494cfbc-eb01-0410-851d-a64ba20cac60
2020-11-24 13:27:11 +00:00