mirror of
https://github.com/cc65/cc65.git
synced 2025-04-06 20:37:16 +00:00
Fixing buffer overflow with cwd command (FILENAME_MAX must be at 50 +1 bytes)
This commit is contained in:
parent
86741cb1dd
commit
d8904c550b
@ -47,6 +47,8 @@ FILENAME_MAX = 64+1
|
||||
FILENAME_MAX = 12+1
|
||||
.elseif .defined(__LUNIX__)
|
||||
FILENAME_MAX = 80+1
|
||||
.elseif .defined(__TELESTRAT__)
|
||||
FILENAME_MAX = 50+1
|
||||
.else
|
||||
FILENAME_MAX = 16+1
|
||||
.endif
|
||||
|
@ -15,7 +15,7 @@ FUNCTKEY = $A5
|
||||
|
||||
FNAME_LEN = 11 ; maximum length of file-name
|
||||
|
||||
FILENAME_MAX = 100
|
||||
FILENAME_MAX = 200
|
||||
|
||||
; ---------------------------------------------------------------------------
|
||||
; Zero page
|
||||
@ -151,6 +151,7 @@ SCRX := $220
|
||||
SCRY := $224
|
||||
ADSCRL := $218
|
||||
ADSCRH := $21C
|
||||
IRQVECTOR := $2FA
|
||||
|
||||
|
||||
; ---------------------------------------------------------------------------
|
||||
|
@ -75,6 +75,8 @@ extern FILE* stderr;
|
||||
# define FILENAME_MAX (12+1)
|
||||
#elif defined(__LUNIX__)
|
||||
# define FILENAME_MAX (80+1)
|
||||
#elif defined(__TELESTRAT__)
|
||||
# define FILENAME_MAX (50+1)
|
||||
#else
|
||||
# define FILENAME_MAX (16+1)
|
||||
#endif
|
||||
|
@ -1,5 +1,5 @@
|
||||
;
|
||||
; Oliver Schmidt, 18.04.2005
|
||||
; Jede (jede@oric.org) 24.09.2017
|
||||
;
|
||||
|
||||
.export initcwd
|
||||
@ -10,14 +10,17 @@
|
||||
|
||||
|
||||
initcwd:
|
||||
|
||||
ldx #PWD_PTR
|
||||
BRK_TELEMON XVARS
|
||||
sta tmp1
|
||||
sty tmp1+1
|
||||
|
||||
|
||||
sta ptr1
|
||||
sty ptr1+1
|
||||
|
||||
ldy #$00
|
||||
|
||||
loop:
|
||||
lda (tmp1),y
|
||||
lda (ptr1),y
|
||||
beq done
|
||||
sta __cwd,y
|
||||
iny
|
||||
|
Loading…
x
Reference in New Issue
Block a user