From c580d4ac5bdb344a041c48b7e3b331217db3f4ca Mon Sep 17 00:00:00 2001 From: igorsh Date: Thu, 8 Jan 2026 17:03:23 +0000 Subject: [PATCH 1/3] ftpd: Add XPWD and XCWD commands (#309) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Добавлены команды XPWD и XCWD, дублирующие PWD и CWD Co-authored-by: Igor Shutrov Co-authored-by: Burer Reviewed-on: https://git.kolibrios.org/KolibriOS/kolibrios/pulls/309 Reviewed-by: Burer Co-authored-by: igorsh Co-committed-by: igorsh --- programs/network/ftpd/commands.inc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/programs/network/ftpd/commands.inc b/programs/network/ftpd/commands.inc index 300b3b649..3b7d04a89 100644 --- a/programs/network/ftpd/commands.inc +++ b/programs/network/ftpd/commands.inc @@ -84,6 +84,7 @@ commands: ; all commands must be in uppercase ; dd 'APPE', login_first, login_first, login_first, cmd_APPE dd 'CDUP', login_first, login_first, login_first, cmdCDUP dd 'CWD', login_first, login_first, login_first, cmdCWD + dd 'XCWD', login_first, login_first, login_first, cmdCWD dd 'DELE', login_first, login_first, login_first, cmdDELE ; dd 'HELP', login_first, login_first, login_first, cmd_HELP dd 'LIST', login_first, login_first, login_first, cmdLIST @@ -96,6 +97,7 @@ commands: ; all commands must be in uppercase dd 'PASV', login_first, login_first, login_first, cmdPASV dd 'PORT', login_first, login_first, login_first, cmdPORT dd 'PWD', login_first, login_first, login_first, cmdPWD + dd 'XPWD', login_first, login_first, login_first, cmdPWD dd 'QUIT', cmdQUIT, cmdQUIT, cmdQUIT, cmdQUIT ; dd 'REIN', login_first, login_first, login_first, cmd_REIN ; dd 'REST', login_first, login_first, login_first, cmd_REST From f1b99bad846014db5d067d40b3356c577d48785e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=95=D0=B3=D0=BE=D1=80?= Date: Sat, 10 Jan 2026 23:27:51 +0000 Subject: [PATCH 2/3] libc.obj: Added missing `strpbrk()` to `EXPORTS` (#310) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Reviewed-on: https://git.kolibrios.org/KolibriOS/kolibrios/pulls/310 Reviewed-by: Max Logaev Co-authored-by: Егор Co-committed-by: Егор --- programs/develop/ktcc/trunk/libc.obj/source/libc.c | 1 + 1 file changed, 1 insertion(+) diff --git a/programs/develop/ktcc/trunk/libc.obj/source/libc.c b/programs/develop/ktcc/trunk/libc.obj/source/libc.c index 1d58689ef..5f1123eca 100644 --- a/programs/develop/ktcc/trunk/libc.obj/source/libc.c +++ b/programs/develop/ktcc/trunk/libc.obj/source/libc.c @@ -204,6 +204,7 @@ ksys_dll_t EXPORTS[] = { { "strstr", &strstr }, { "strtok", &strtok }, { "strxfrm", &strxfrm }, + { "strpbrk", &strpbrk }, { "__errno", &__errno }, { "closedir", &closedir }, { "opendir", &opendir }, From f065cc6e6901620ad64a3dbb0847ca5abe8a47a4 Mon Sep 17 00:00:00 2001 From: Max Logaev Date: Sun, 11 Jan 2026 02:30:38 +0300 Subject: [PATCH 3/3] mtdbg: Fixed magic cmd flags Signed-off-by: Max Logaev --- programs/develop/mtdbg/gui.inc | 45 +++++++++-------- programs/develop/mtdbg/mtdbg.asm | 85 +++++++++++++++++++------------- 2 files changed, 74 insertions(+), 56 deletions(-) diff --git a/programs/develop/mtdbg/gui.inc b/programs/develop/mtdbg/gui.inc index cf4b39350..c3b6bcf2f 100644 --- a/programs/develop/mtdbg/gui.inc +++ b/programs/develop/mtdbg/gui.inc @@ -122,7 +122,13 @@ struc fpcvt .sizeof: } +;----------------------------------------------------------------------------- +; Command flags +CMD_WITHOUT_PARAM = 1b ; command may be called without parameters +CMD_WITH_PARAM = 10b ; command may be called with parameters +CMD_WITHOUT_LOADED_APP = 100b ; command may be called without loaded program +CMD_WITH_LOADED_APP = 1000b ; command may be called with loaded program ;----------------------------------------------------------------------------- ; Entry point @@ -449,63 +455,56 @@ z1: mov esi, commands call find_cmd mov eax, aUnknownCommand - jc .x11 - - ; check command requirements - ; flags field: - ; &1: command may be called without parameters - ; &2: command may be called with parameters - ; &4: command may be called without loaded program - ; &8: command may be called with loaded program + jc .cmd_procg mov eax, [esi+8] mov ecx, [curarg] cmp byte [ecx], 0 jz .noargs - test byte [esi+16], 2 - jz .x11 + test byte [esi+16], CMD_WITH_PARAM + jz .cmd_procg jmp @f .noargs: - test byte [esi+16], 1 - jz .x11 + test byte [esi+16], CMD_WITHOUT_PARAM + jz .cmd_procg @@: cmp [debuggee_pid], 0 jz .nodebuggee mov eax, aAlreadyLoaded - test byte [esi+16], 8 - jz .x11 - jmp .x9 + test byte [esi+16], CMD_WITH_LOADED_APP + jz .cmd_procg + jmp .run_cmd .nodebuggee: mov eax, need_debuggee - test byte [esi+16], 4 - jnz .x9 + test byte [esi+16], CMD_WITHOUT_LOADED_APP + jnz .run_cmd - .x11: + .cmd_procg: xchg esi, eax call put_message ; store cmdline for repeating - .x10: + .cmd_procg_no_put_msg: mov esi, cmdline mov ecx, [cmdline_len] @@: cmp ecx, 0 - jle .we + jle .wait_event mov al, [esi + ecx] mov [cmdline_prev + ecx], al dec ecx jmp @b - .we: + .wait_event: mov [cmdline_len], 0 jmp waitevent - .x9: + .run_cmd: call dword [esi+4] - jmp .x10 + jmp .cmd_procg_no_put_msg ;----------------------------------------------------------------------------- ; Cmdline handling diff --git a/programs/develop/mtdbg/mtdbg.asm b/programs/develop/mtdbg/mtdbg.asm index adc26d0c9..44c5c6dbb 100644 --- a/programs/develop/mtdbg/mtdbg.asm +++ b/programs/develop/mtdbg/mtdbg.asm @@ -1880,66 +1880,85 @@ help_groups: ;----------------------------------------------------------------------------- ; Commands format definitions -; TODO: make it with macros - -; flags field: -; &1: command may be called without parameters -; &2: command may be called with parameters -; &4: command may be called without loaded program -; &8: command may be called with loaded program commands: dd _aH, OnHelp, HelpSyntax, HelpHelp - db 0Fh + db CMD_WITHOUT_PARAM or CMD_WITH_PARAM or CMD_WITHOUT_LOADED_APP or CMD_WITH_LOADED_APP + dd aHelp, OnHelp, HelpSyntax, HelpHelp - db 0Fh + db CMD_WITHOUT_PARAM or CMD_WITH_PARAM or CMD_WITHOUT_LOADED_APP or CMD_WITH_LOADED_APP + dd aQuit, OnQuit, QuitSyntax, QuitHelp - db 0Dh + db CMD_WITHOUT_PARAM or CMD_WITHOUT_LOADED_APP or CMD_WITH_LOADED_APP + dd aLoad, OnLoad, LoadSyntax, LoadHelp - db 6 + db CMD_WITH_PARAM or CMD_WITHOUT_LOADED_APP + dd aReload, OnReload, ReloadSyntax, ReloadHelp - db 0Dh + db CMD_WITHOUT_PARAM or CMD_WITHOUT_LOADED_APP or CMD_WITH_LOADED_APP + dd aTerminate, OnTerminate, TerminateSyntax, TerminateHelp - db 9 + db CMD_WITHOUT_PARAM or CMD_WITH_LOADED_APP + dd aDetach, OnDetach, DetachSyntax, DetachHelp - db 9 + db CMD_WITHOUT_PARAM or CMD_WITH_LOADED_APP + dd aSuspend, OnSuspend, SuspendSyntax, SuspendHelp - db 9 + db CMD_WITHOUT_PARAM or CMD_WITH_LOADED_APP + dd aResume, OnResume, ResumeSyntax, ResumeHelp - db 0Bh + db CMD_WITHOUT_PARAM or CMD_WITH_PARAM or CMD_WITH_LOADED_APP + dd aStep, OnStepMultiple, StepSyntax, StepHelp - db 0Bh + db CMD_WITHOUT_PARAM or CMD_WITH_PARAM or CMD_WITH_LOADED_APP + dd aProceed, OnProceedMultiple, ProceedSyntax, ProceedHelp - db 0Bh + db CMD_WITHOUT_PARAM or CMD_WITH_PARAM or CMD_WITH_LOADED_APP + dd aCalc, OnCalc, CalcSyntax, CalcHelp - db 0Eh + db CMD_WITH_PARAM or CMD_WITHOUT_LOADED_APP or CMD_WITH_LOADED_APP + dd aDump, OnDump, DumpSyntax, DumpHelp - db 0Bh + db CMD_WITHOUT_PARAM or CMD_WITH_PARAM or CMD_WITH_LOADED_APP + dd aUnassemble, OnUnassemble, UnassembleSyntax, UnassembleHelp - db 0Bh + db CMD_WITHOUT_PARAM or CMD_WITH_PARAM or CMD_WITH_LOADED_APP + dd aBp, OnBp, BpSyntax, BpHelp - db 0Ah + db CMD_WITH_PARAM or CMD_WITH_LOADED_APP + dd aBpm, OnBpmb, BpmSyntax, BpmHelp - db 0Ah + db CMD_WITH_PARAM or CMD_WITH_LOADED_APP + dd aBpmb, OnBpmb, BpmSyntax, BpmHelp - db 0Ah + db CMD_WITH_PARAM or CMD_WITH_LOADED_APP + dd aBpmw, OnBpmw, BpmSyntax, BpmHelp - db 0Ah + db CMD_WITH_PARAM or CMD_WITH_LOADED_APP + dd aBpmd, OnBpmd, BpmSyntax, BpmHelp - db 0Ah + db CMD_WITH_PARAM or CMD_WITH_LOADED_APP + dd aBl, OnBl, BlSyntax, BlHelp - db 0Bh + db CMD_WITHOUT_PARAM or CMD_WITH_PARAM or CMD_WITH_LOADED_APP + dd aBc, OnBc, BcSyntax, BcHelp - db 0Ah + db CMD_WITH_PARAM or CMD_WITH_LOADED_APP + dd aBd, OnBd, BdSyntax, BdHelp - db 0Ah + db CMD_WITH_PARAM or CMD_WITH_LOADED_APP + dd aBe, OnBe, BeSyntax, BeHelp - db 0Ah + db CMD_WITH_PARAM or CMD_WITH_LOADED_APP + dd aReg, OnReg, RSyntax, RHelp - db 0Ah + db CMD_WITH_PARAM or CMD_WITH_LOADED_APP + dd aUnpack, OnUnpack, UnpackSyntax, UnpackHelp - db 9 + db CMD_WITHOUT_PARAM or CMD_WITH_LOADED_APP + dd aLoadSymbols, OnLoadSymbols, LoadSymbolsSyntax, LoadSymbolsHelp - db 0Ah + db CMD_WITH_PARAM or CMD_WITH_LOADED_APP + dd 0 ;-----------------------------------------------------------------------------