From owner-freebsd-hackers Tue Mar 13 7:28: 3 2001 Delivered-To: freebsd-hackers@freebsd.org Received: from sivka.carrier.kiev.ua (sivka.carrier.kiev.ua [193.193.193.101]) by hub.freebsd.org (Postfix) with ESMTP id 7215837B729 for ; Tue, 13 Mar 2001 07:27:53 -0800 (PST) (envelope-from diman@asd-g.com) Received: from core.is.kiev.ua (p187.is.kiev.ua [62.244.5.187] (may be forged)) by sivka.carrier.kiev.ua (8/Kilkenny_is_better) with ESMTP id RKA16233; Tue, 13 Mar 2001 17:26:00 +0200 (EET) (envelope-from diman@asd-g.com) Received: from ergo.local ([10.203.1.10]) by core.is.kiev.ua (8.11.1/ASDG-2.3-NR) with ESMTP id f2DFPxJ69866; Tue, 13 Mar 2001 17:25:59 +0200 (EET) (envelope-from diman@asd-g.com) Date: Tue, 13 Mar 2001 17:23:13 +0200 (EET) From: diman X-Sender: diman@portal.none.ua To: "Nickolay A. Kritsky" Cc: freebsd-hackers@FreeBSD.ORG Subject: Re: FreeBSD asm problem In-Reply-To: <00b701c0abca$624b7630$0600a8c0@ibmka.internethelp.ru> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG --------ex.S------------ #include .globl main main: popl %eax /* cick ret */ popl %eax /* cick argc */ movl (%esp),%eax /* eax=av */ movl $fname, %ebx /* ebx=fname */ movl %ebx,(%eax) /* av[0]=fname */ pushl %ebx /* needs to be on the stack too */ movl $SYS_execve,%eax /* execve */ call syscall movl $SYS_exit,%eax /* exit */ call syscall syscall: int $0x80 ret fname: .asciz "/bin/sh" On Tue, 13 Mar 2001, Nickolay A. Kritsky wrote: > Hi all! > It seems to me that you guys are my last hope, but if i am asking in the > wrong place - sorry. > > I wrote my first asm program for FreeBSD: > > section .code > global _start > _start: > push dword envp > push dword argvp > push dword fname > mov eax,59 ; execve > int 80h > hlt ; i should never get here > > section .data > fname db '/bin/sh',0 > envp dd 0 > argvp dd 0 > ;End of program > > after compiling and linking i run it and got SIGBUS error > when run under gdb i can see that int 80h returns with eax=2 (ENOENT? does > it mean file not found?) > > I have a feeling that i have missed something very important. > > Thank you. > NKritsky - SysAdmin InternetHelp.Ru > http://www.internethelp.ru > e-mail: nkritsky@internethelp.ru > > > > To Unsubscribe: send mail to majordomo@FreeBSD.org > with "unsubscribe freebsd-hackers" in the body of the message > To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message