[syslinux] no echo patch

Martin Vogt mvogt at rhrk.uni-kl.de
Sat Jan 12 09:51:52 PST 2002


pxelinux does not has any password protection,
unfortunately my Assembler skills are not that
good to extend pxelinux with a global password
Nevertheless this feature is important, because
not every user should have the right to startup 
an installation of a machine over network.

The following patch is only a dirty hack, but other
might find it usefull too.(so I post it here)

It disables the echo in the boot prompt and
for the error message "kernel not found"

With this hack it is possible to "encode" the
password in the tftp image name , because it
is not echoed on the screen.

Well, this is obviously no real security, 
because everyone has access to the tftp connection,
but for "joe user" this is enough.(IMHO)



PS: I do not know if this patch has any unwanted sideeffects.
    Here it does work.

diff -ru syslinux-1.66.old/pxelinux.asm syslinux-1.66/pxelinux.asm
--- syslinux-1.66.old/pxelinux.asm	Wed Jan  2 07:53:39 2002
+++ syslinux-1.66/pxelinux.asm	Sat Jan 12 18:40:34 2002
@@ -1327,7 +1327,7 @@
 .not_ctrl_f:	cmp di,max_cmd_len+command_line ; Check there's space
 		jnb get_char
 		stosb				; Save it
-		call writechr			; Echo to screen
+;Martin		call writechr			; Echo to screen
 get_char_2:	jmp short get_char
 not_ascii:	mov byte [FuncFlag],0
 		cmp al,0Dh			; Enter
@@ -1339,8 +1339,8 @@
 backspace:	cmp di,command_line		; Make sure there is anything
 		je get_char			; to erase
 		dec di				; Unstore one character
-		mov si,wipe_char		; and erase it from the screen
-		call cwritestr
+;Martin		mov si,wipe_char		; and erase it from the screen
+;Martin		call cwritestr
 		jmp short get_char_2
@@ -1494,7 +1494,7 @@
 		mov si,err_notfound		; Complain about missing kernel
 		call cwritestr
 		pop si				; KernelCName
-                call cwritestr
+;Martin         call cwritestr
                 mov si,crlf_msg
                 jmp abort_load                  ; Ask user for clue

More information about the Syslinux mailing list