* [devel] extern inline function redifinition
@ 2007-10-23 21:05 Peter V. Saveliev
2007-10-23 21:16 ` Konstantin A. Lepikhov
0 siblings, 1 reply; 5+ messages in thread
From: Peter V. Saveliev @ 2007-10-23 21:05 UTC (permalink / raw)
To: ALT Linux Team development discussions
...
Знатокам С вопрос: я получаю такую ошибку:
/bin/sh ./libtool --tag=CC --mode=compile
gcc -DHAVE_CONFIG_H -I. -I. -I. -I./ -I./compat -O2 -Wall -g -DPATH_HONEYDINCLUDE="\"/usr/local/include/honeyd\"" -DPATH_HONEYDDATA="\"/usr/local/share/honeyd\"" -DPATH_HONEYDLIB="\"/usr/local/lib/honeyd\"" -DHONEYD_PLUGINS_DECLARE="" -DHONEYD_PLUGINS="" -DPATH_RRDTOOL="\"/usr/bin/rrdtool\"" -c -o
honeyd_overload.lo honeyd_overload.c
gcc -DHAVE_CONFIG_H -I. -I. -I. -I./ -I./compat -O2 -Wall -g -DPATH_HONEYDINCLUDE=\"/usr/local/include/honeyd\" -DPATH_HONEYDDATA=\"/usr/local/share/honeyd\" -DPATH_HONEYDLIB=\"/usr/local/lib/honeyd\" -DHONEYD_PLUGINS_DECLARE= -DHONEYD_PLUGINS= -DPATH_RRDTOOL=\"/usr/bin/rrdtool\" -c
honeyd_overload.c -fPIC -DPIC -o .libs/honeyd_overload.o
honeyd_overload.c: In function 'recvmsg':
honeyd_overload.c:738: sorry, unimplemented: inlining failed in call
to 'recvfrom': redefined extern inline functions are not considered for
inlining
honeyd_overload.c:873: sorry, unimplemented: called from here
make[2]: *** [honeyd_overload.lo] Error 1
make[2]: Leaving directory `/var/lib/home/peet/RPM/BUILD/honeyd-1.5c'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/lib/home/peet/RPM/BUILD/honeyd-1.5c'
make: *** [all] Error 2
Что это за шайтан?
--
Peter V. Saveliev
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [devel] extern inline function redifinition
2007-10-23 21:05 [devel] extern inline function redifinition Peter V. Saveliev
@ 2007-10-23 21:16 ` Konstantin A. Lepikhov
2007-10-23 22:01 ` Peter V. Saveliev
0 siblings, 1 reply; 5+ messages in thread
From: Konstantin A. Lepikhov @ 2007-10-23 21:16 UTC (permalink / raw)
To: ALT Linux Team development discussions
[-- Attachment #1: Type: text/plain, Size: 1554 bytes --]
Hi Peter!
Wednesday 24, at 01:05:14 AM you wrote:
> ...
>
> Знатокам С вопрос: я получаю такую ошибку:
>
> /bin/sh ./libtool --tag=CC --mode=compile
> gcc -DHAVE_CONFIG_H -I. -I. -I. -I./ -I./compat -O2 -Wall -g -DPATH_HONEYDINCLUDE="\"/usr/local/include/honeyd\"" -DPATH_HONEYDDATA="\"/usr/local/share/honeyd\"" -DPATH_HONEYDLIB="\"/usr/local/lib/honeyd\"" -DHONEYD_PLUGINS_DECLARE="" -DHONEYD_PLUGINS="" -DPATH_RRDTOOL="\"/usr/bin/rrdtool\"" -c -o
> honeyd_overload.lo honeyd_overload.c
>
> gcc -DHAVE_CONFIG_H -I. -I. -I. -I./ -I./compat -O2 -Wall -g -DPATH_HONEYDINCLUDE=\"/usr/local/include/honeyd\" -DPATH_HONEYDDATA=\"/usr/local/share/honeyd\" -DPATH_HONEYDLIB=\"/usr/local/lib/honeyd\" -DHONEYD_PLUGINS_DECLARE= -DHONEYD_PLUGINS= -DPATH_RRDTOOL=\"/usr/bin/rrdtool\" -c
> honeyd_overload.c -fPIC -DPIC -o .libs/honeyd_overload.o
> honeyd_overload.c: In function 'recvmsg':
> honeyd_overload.c:738: sorry, unimplemented: inlining failed in call
> to 'recvfrom': redefined extern inline functions are not considered for
> inlining
> honeyd_overload.c:873: sorry, unimplemented: called from here
> make[2]: *** [honeyd_overload.lo] Error 1
> make[2]: Leaving directory `/var/lib/home/peet/RPM/BUILD/honeyd-1.5c'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/var/lib/home/peet/RPM/BUILD/honeyd-1.5c'
> make: *** [all] Error 2
>
>
> Что это за шайтан?
а что в коде? Помойму просто надо убрать inline декларирование из
extern'ов, такое даже в ядре не используют.
--
WBR et al.
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [devel] extern inline function redifinition
2007-10-23 21:16 ` Konstantin A. Lepikhov
@ 2007-10-23 22:01 ` Peter V. Saveliev
2007-10-23 22:37 ` Konstantin A. Lepikhov
0 siblings, 1 reply; 5+ messages in thread
From: Peter V. Saveliev @ 2007-10-23 22:01 UTC (permalink / raw)
To: ALT Linux Team development discussions
В сообщении от Wednesday 24 October 2007 01:16:00 Konstantin A. Lepikhov
написал(а):
<skip />
> а что в коде? Помойму просто надо убрать inline декларирование из
> extern'ов, такое даже в ядре не используют.
сам вызов:
/* Now we have successfully converted the call into a recvmsg call */
ret = recvfrom(sock, data, len, flags,
msg->msg_name, &msg->msg_namelen);
что вызывает (в этом же файле):
ssize_t
recvfrom(int sock, void *buf, size_t len, int flags, struct sockaddr *from,
socklen_t *fromlen)
{
как оно прототипировано там же:
#define DECLARE(name, ret, args) static ret (*libc_##name) args
DECLARE(recvfrom, ssize_t, (int, void *, size_t, int, struct sockaddr *,
socklen_t *));
Можешь подсказать, _зачем_ оно так? :)
--
Peter V. Saveliev
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [devel] extern inline function redifinition
2007-10-23 22:01 ` Peter V. Saveliev
@ 2007-10-23 22:37 ` Konstantin A. Lepikhov
2007-10-24 16:35 ` Alexey I. Froloff
0 siblings, 1 reply; 5+ messages in thread
From: Konstantin A. Lepikhov @ 2007-10-23 22:37 UTC (permalink / raw)
To: ALT Linux Team development discussions
[-- Attachment #1: Type: text/plain, Size: 1112 bytes --]
Hi Peter!
Wednesday 24, at 02:01:19 AM you wrote:
> В сообщении от Wednesday 24 October 2007 01:16:00 Konstantin A. Lepikhov
> написал(а):
> <skip />
> > а что в коде? Помойму просто надо убрать inline декларирование из
> > extern'ов, такое даже в ядре не используют.
>
> сам вызов:
>
> /* Now we have successfully converted the call into a recvmsg call */
> ret = recvfrom(sock, data, len, flags,
> msg->msg_name, &msg->msg_namelen);
>
> что вызывает (в этом же файле):
>
> ssize_t
> recvfrom(int sock, void *buf, size_t len, int flags, struct sockaddr *from,
> socklen_t *fromlen)
> {
>
> как оно прототипировано там же:
>
> #define DECLARE(name, ret, args) static ret (*libc_##name) args
> DECLARE(recvfrom, ssize_t, (int, void *, size_t, int, struct sockaddr *,
> socklen_t *));
>
> Можешь подсказать, _зачем_ оно так? :)
они редефайнят глибцовые функции, но вот зачем непонятно - может, это для
совместимости с win32 сделано. Попробуй выкинуть все эти DECLARE, и
добавить обычные глибцовые заголовки.
--
WBR et al.
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [devel] extern inline function redifinition
2007-10-23 22:37 ` Konstantin A. Lepikhov
@ 2007-10-24 16:35 ` Alexey I. Froloff
0 siblings, 0 replies; 5+ messages in thread
From: Alexey I. Froloff @ 2007-10-24 16:35 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: Type: text/plain, Size: 366 bytes --]
* Konstantin A. Lepikhov <lakostis@> [071024 02:38]:
> > Можешь подсказать, _зачем_ оно так? :)
> они редефайнят глибцовые функции, но вот зачем непонятно - может, это для
> совместимости с win32 сделано.
Это же honeypot. Оно переопределяет эти функции и вешает свои
обработчики. Примерно также как всякие fakeroot'ы это делают.
--
Regards,
Sir Raorn.
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2007-10-24 16:35 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-10-23 21:05 [devel] extern inline function redifinition Peter V. Saveliev
2007-10-23 21:16 ` Konstantin A. Lepikhov
2007-10-23 22:01 ` Peter V. Saveliev
2007-10-23 22:37 ` Konstantin A. Lepikhov
2007-10-24 16:35 ` Alexey I. Froloff
ALT Linux Team development discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
public-inbox-index devel
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.devel
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git