
Hi, ich bin was am debuggen und versuche mehr über sockets zu erfahren. man 2 socket sagt: SYNOPSIS #include <sys/types.h> /* See NOTES */ #include <sys/socket.h> Wo finde ich denn diese sys/socket.h ? Ich habe auf meinem System die Kernelquellen und "kernel-default-devel" installiert, finde diese Datei bzw den Ordner sys aber nicht: ha-idg-1:~ # find /usr/ -iname sys -type d /usr/lib/perl5/5.10.0/x86_64-linux-thread-multi/auto/Sys /usr/lib/perl5/5.10.0/x86_64-linux-thread-multi/Sys /usr/lib/perl5/vendor_perl/5.10.0/x86_64-linux-thread-multi/sys /usr/src/linux-3.0.101-100-obj/x86_64/default/include/config/fb/sys /usr/NX/lib/perl/include/sys Bernd -- Bernd Lentes Systemadministration institute of developmental genetics Gebäude 35.34 - Raum 208 HelmholtzZentrum München bernd.lentes@helmholtz-muenchen.de phone: +49 (0)89 3187 1241 fax: +49 (0)89 3187 2294 no backup - no mercy Helmholtz Zentrum Muenchen Deutsches Forschungszentrum fuer Gesundheit und Umwelt (GmbH) Ingolstaedter Landstr. 1 85764 Neuherberg www.helmholtz-muenchen.de Aufsichtsratsvorsitzende: MinDir'in Baerbel Brumme-Bothe Geschaeftsfuehrer: Prof. Dr. Guenther Wess, Heinrich Bassler, Dr. Alfons Enhsen Registergericht: Amtsgericht Muenchen HRB 6466 USt-IdNr: DE 129521671 -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org

Hallo, Am 16.08.2017 16:08, schrieb Lentes, Bernd:
Die findest du unter /usr/include/sys/socket.h Dazu muss aber glibc-devel installiert sein. Gruß Micha -- Michael Liebmann mail@slknet.de -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org

Hi, Lentes, Bernd schrieb:
/usr/include/sys
Du hast scheinbar die "-devel"-Pakete nicht installiert, die die gesuchten Headerfiles enthalten. #> rpm -qf /usr/include/sys/socket.h glibc-devel-2.19-16.28.1.x86_64 (auf meinem 13.2-System) Martin -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org

----- On Aug 16, 2017, at 4:27 PM, Martin Burnicki martin.burnicki@burnicki.net wrote:
Hab ich gefunden. Das hilft mir leider nicht weiter. Ich verstehe folgenden syscall nicht ganz: [pid 18587] 17:44:38.685891 socket(PF_FILE, SOCK_STREAM, 0 <unfinished ...> [pid 18587] 17:44:38.685911 <... socket resumed> ) = 3 man 2 socket kennt aber kein PF_FILE, von daher frage ich mich wie das funktioniert. Ich habe PF_FILE unter anderem hier gefunden: ha-idg-1:/usr # less include/bits/socket.h ... /* Protocol families. */ #define PF_UNSPEC 0 /* Unspecified. */ #define PF_LOCAL 1 /* Local to host (pipes and file-domain). */ #define PF_UNIX PF_LOCAL /* POSIX name for PF_LOCAL. */ #define PF_FILE PF_LOCAL /* Another non-standard name for PF_LOCAL. */ <============== #define PF_INET 2 /* IP protocol family. */ #define PF_AX25 3 /* Amateur Radio AX.25. */ #define PF_IPX 4 /* Novell Internet Protocol. */ #define PF_APPLETALK 5 /* Appletalk DDP. */ #define PF_NETROM 6 /* Amateur radio NetROM. */ #define PF_BRIDGE 7 /* Multiprotocol bridge. */ #define PF_ATMPVC 8 /* ATM PVCs. */ #define PF_X25 9 /* Reserved for X.25 project. */ #define PF_INET6 10 /* IP version 6. */ #define PF_ROSE 11 /* Amateur Radio X.25 PLP. */ Diese socket.h gehört zum glibc-devel Paket. Aber man 2 socket bezieht sich doch auf einen syscall, sprich eine Anfrage an den Kernel. Was hat die glibc damit zu tun ? Ich weiß das Binaries meist erst Funktionen aufrufen, die wiederum dann syscalls aufrufen. Oder ? Aber wie "versteht" der syscall dann PF_FILE ? Bernd Helmholtz Zentrum Muenchen Deutsches Forschungszentrum fuer Gesundheit und Umwelt (GmbH) Ingolstaedter Landstr. 1 85764 Neuherberg www.helmholtz-muenchen.de Aufsichtsratsvorsitzende: MinDir'in Baerbel Brumme-Bothe Geschaeftsfuehrer: Prof. Dr. Guenther Wess, Heinrich Bassler, Dr. Alfons Enhsen Registergericht: Amtsgericht Muenchen HRB 6466 USt-IdNr: DE 129521671 -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org

Hallo, Am 16.08.2017 16:08, schrieb Lentes, Bernd:
Die findest du unter /usr/include/sys/socket.h Dazu muss aber glibc-devel installiert sein. Gruß Micha -- Michael Liebmann mail@slknet.de -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org

Hi, Lentes, Bernd schrieb:
/usr/include/sys
Du hast scheinbar die "-devel"-Pakete nicht installiert, die die gesuchten Headerfiles enthalten. #> rpm -qf /usr/include/sys/socket.h glibc-devel-2.19-16.28.1.x86_64 (auf meinem 13.2-System) Martin -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org

----- On Aug 16, 2017, at 4:27 PM, Martin Burnicki martin.burnicki@burnicki.net wrote:
Hab ich gefunden. Das hilft mir leider nicht weiter. Ich verstehe folgenden syscall nicht ganz: [pid 18587] 17:44:38.685891 socket(PF_FILE, SOCK_STREAM, 0 <unfinished ...> [pid 18587] 17:44:38.685911 <... socket resumed> ) = 3 man 2 socket kennt aber kein PF_FILE, von daher frage ich mich wie das funktioniert. Ich habe PF_FILE unter anderem hier gefunden: ha-idg-1:/usr # less include/bits/socket.h ... /* Protocol families. */ #define PF_UNSPEC 0 /* Unspecified. */ #define PF_LOCAL 1 /* Local to host (pipes and file-domain). */ #define PF_UNIX PF_LOCAL /* POSIX name for PF_LOCAL. */ #define PF_FILE PF_LOCAL /* Another non-standard name for PF_LOCAL. */ <============== #define PF_INET 2 /* IP protocol family. */ #define PF_AX25 3 /* Amateur Radio AX.25. */ #define PF_IPX 4 /* Novell Internet Protocol. */ #define PF_APPLETALK 5 /* Appletalk DDP. */ #define PF_NETROM 6 /* Amateur radio NetROM. */ #define PF_BRIDGE 7 /* Multiprotocol bridge. */ #define PF_ATMPVC 8 /* ATM PVCs. */ #define PF_X25 9 /* Reserved for X.25 project. */ #define PF_INET6 10 /* IP version 6. */ #define PF_ROSE 11 /* Amateur Radio X.25 PLP. */ Diese socket.h gehört zum glibc-devel Paket. Aber man 2 socket bezieht sich doch auf einen syscall, sprich eine Anfrage an den Kernel. Was hat die glibc damit zu tun ? Ich weiß das Binaries meist erst Funktionen aufrufen, die wiederum dann syscalls aufrufen. Oder ? Aber wie "versteht" der syscall dann PF_FILE ? Bernd Helmholtz Zentrum Muenchen Deutsches Forschungszentrum fuer Gesundheit und Umwelt (GmbH) Ingolstaedter Landstr. 1 85764 Neuherberg www.helmholtz-muenchen.de Aufsichtsratsvorsitzende: MinDir'in Baerbel Brumme-Bothe Geschaeftsfuehrer: Prof. Dr. Guenther Wess, Heinrich Bassler, Dr. Alfons Enhsen Registergericht: Amtsgericht Muenchen HRB 6466 USt-IdNr: DE 129521671 -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
participants (3)
-
Lentes, Bernd
-
M. Liebmann
-
Martin Burnicki