Re: intercepting system calls works on tiger(10.4.5) but not on panther(10.3.9)
Re: intercepting system calls works on tiger(10.4.5) but not on panther(10.3.9)
- Subject: Re: intercepting system calls works on tiger(10.4.5) but not on panther(10.3.9)
- From: "Peter O'Gorman" <email@hidden>
- Date: Wed, 17 May 2006 23:18:00 +0900
On Tue, 2006-05-16 at 23:01 -0600, Puthali H.B wrote:
> Actually I've a dynamic library which over-rides system calls, namely
> connect,recv,send,sendto,accept...
> and when I preload this on Tiger, using DYLD_INSERT_LIBRARIES AND
> DYLD_FORCE_FLAT_NAMESPACE, everything works fine.
>
> When I pre-loaded this library in terminal and ran FTP got the
> following error-
>
> dyld: FTP multiple definitions of symbol _connect
> test_connect.dylib(ccyRQhrn.o) definition of _connect
> /usr/lib/libSystem.B.dylib(connect.So) definition of _connect
> Trace/BPT trap
Works for me on panther (10.3.9):
peter$ cc -dynamiclib -o test_connect.dylib connect.c
peter$ env DYLD_INSERT_LIBRARIES=./test_connect.dylib
DYLD_FORCE_FLAT_NAMESPACE=1 ftp ftp.pogma.com
Connect Called
ftp: connect: Unknown error: 0
ftp> quit
peter$ cat connect.c
#include <stdio.h>
int connect() {
fprintf(stderr,"Connect Called\n");
return 1;
}
I assume that you're doing something different?
Peter
Attachment:
signature.asc
Description: This is a digitally signed message part
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Darwin-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden