OT: WAS: relink ELF souboru

Dan Lukes dan at obluda.cz
Mon Jun 18 16:09:34 CEST 2007


Roman Divacky napsal/wrote, On 06/18/07 15:28:
> takze muj nazor je ten ze v te jave je to napojeni JVM<->OS pro sockety delane
> tak ze to sysV sezere, zatimco na bsd to vrati EINVAL.

	Sys V nema, pokdu vim, BSD sockety jako nativni interface k sitovym 
sluzbam. Samozrejme, ze tam mohou byt (a vetsinou jsou) knihovny, ktere 
nad nativnim rozhranim jadra emuluji BSD sitove API - pak tam 
(emulovany) socket bude.

	Jake maji nativni rozhrani Wokna nevim, ty maji snad nejake uplne 
separatne vlastni, ale WinSock je knihovni emulace BSD rozhrani. Jak to 
ma Linux, ktery neni ani poctivy SYS V klon ani BSD-like system to 
netusim uz vubec.

	Kazdopadne, cekal bych, ze JVNI pouziva spis nativni interface kazdeho 
konkretniho systemu.

> ja se s necim podobnym setkal u sendmsg kde linuxovy ping predava tudle strukturu:
...
> tak ze msg_control je NULL a msg_controllen je nenulove, moc to nedava smysl a 
> myslim ze todle standardy moc neresi takze je to zavisle na implementace, a BSD
> byva tradicne striktnejsi nez linux aspol.
> 
> takze bych to videl spis na chybu v JDK nez v te javove aplikaci

	To je uvaha, kterou jsem provedl taky. Obzvlast kdyz vim, ze onen 
Javovy socket() (a nasledny write do nej) se transformoval (zdroj: 
ktrace) do volani socket(), connect() a sendto(s, msg, size, 0, NULL, 
0). A taky podezrivam ten NULL, 0

	Coz ale nevysvetluje, proc by problem mel resit preklad JVM bez IPv6 ...

	No, nema smysl spekulovat. Jestli znalec Javy doda jak ma vypadat 
korektni IPv4/IPv6 portabilni volani, tak to vyzkousim a uvidim. Jelikzo 
ale nevim, jak se tohle v Jave korektne dela, je to pro me zatim jedna 
rovnice o dvou neznamych ...

							Dan


-- 
Dan Lukes                                               SISAL MFF UK
AKA: dan at obluda.cz, dan at freebsd.cz, dan at (kolej.)mff.cuni.cz



More information about the Users-l mailing list