Provided by: manpages-pl_0.6-2_all bug

NAZWA

       x25 - interfejs protokołu ITU-T X.25 / ISO-8208.

SKŁADNIA

       #include <sys/socket.h>
       #include <linux/x25.h>

       x25_socket = socket(AF_X25, SOCK_SEQPACKET, 0);

OPIS

       Gniazda  X25  stanowią  interfejs do warstwy pakietów protokołu X.25. Umożliwiają łączenie
       się  aplikacji  przez  publiczną  sieć  danych  X.25,  zgodnie  z  opisem  w   zaleceniach
       Międzynarodowej  Unii  Telekomunikacyjnej dotyczących X25 (tryb DTE-DCE X.25). Gniazda X25
       mogą również być stosowane do łączności bez pośrednictwa sieci X.25 (trybu DTE-DCE  X.25),
       jak opisano to w ISO-8208.

       Granice komunikatów są zachowane — odczyt z gniazda za pomocą read(2) spowoduje otrzymanie
       tej samej porcji danych, którą wyprowadzono  za  pomocą  odpowiadającego  mu  write(2)  do
       gniazda  z  drugiej  strony  połączenia.  Gdy  jest potrzeba, jądro przeprowadza podział i
       powtórne złożenie długich komunikatów z wykorzystaniem  bitu  M  protokołu  X.25.  Nie  ma
       zakodowanego na stałe górnego ograniczenia rozmiaru komunikatu. Jednakże powtórne złożenie
       długiego  komunikatu  może  się  nie  powieść  w  przypadku  tymczasowego  braku   zasobów
       systemowych  lub  gdy  ograniczenia  innych  zasobów  (takich  jak  pamięć  dla gniazd czy
       ograniczenia rozmiaru bufora) okażą się istotne. Gdy  zajdzie  taka  sytuacja,  połączenie
       X.25 zostanie zainicjowane ponownie.

   Adresy gniazda
       Rodzina  adresów  gniazd  AF_X25 korzysta do reprezentacji adresów sieciowych ze struktury
       struct sockaddr_x25 zdefiniowanej w zaleceniach ITU-T dla X.121.

           struct sockaddr_x25 {
               sa_family_t sx25_family;    /* musi być AF_X25 */
               x25_address sx25_addr;      /* adres X.121 */
           };

       sx25_addr zawiera tablicą znakową x25_addr[] interpretowaną jako zakończony  znakiem  NULL
       łańcuch.  sx25_addr.x25_addr[]  składa  się  z  maksymalnie 15 (nie licząc końcowego bajtu
       zerowego) znaków ASCII tworzących adres X.121. Dozwolone są jedynie  cyfry  dziesiętne  od
       "0" do "9".

   Opcje gniazda
       Następujące  specyficzne  dla  X.25  opcje gniazd można ustawiać za pomocą setsockopt(2) i
       odczytywać za pomocą getsockopt(2), gdy parametr level jest ustawiony na SOL_X25.

       X25_QBITINCL
              Określa, czy bit Q protokołu X.25 (kwalifikowany bit danych - Qualified  Data  Bit)
              jest  dostępny  dla  programu  użytkownika.  Oczekuje  argumentu  całkowitego.  Gdy
              argument ten jest ustawiony na 0 (wartość domyślna), bit Q nigdy nie jest ustawiany
              w  pakietach  wychodzących,  a  bit  Q pakietów przychodzących jest ignorowany. Gdy
              argument tjest ustawiony na 1, do każdego  komunikatu  odczytanego  z  gniazda  lub
              zapisanego  do niego jest dołączany dodatkowy pierwszy bajt. Dla danych odczytanych
              z gniazda wartość 0 tego bajtu  oznacza,  że  bity  Q  odpowiednich  przychodzących
              pakietów z danymi nie były ustawione. Wartość 1 pierwszego bajtu oznacza, że bity Q
              odpowiednich przychodzących pakietów z danymi były  ustawione.  Gdy  pierwszy  bajt
              danych  zapisywanych  do  gniazda  jest  równy  1,  to  zostanie  ustawiony  bit  Q
              odpowiednich wysyłanych pakietów. Gdy  pierwszy  bajt  jest  równy  0,  bit  Q  nie
              zostanie ustawiony.

WERSJE

       Rodzina protokołów AF_X25 pojawiła się w Linuksie 2.2.

USTERKI

       Mnóstwo, gdyż implementacja X.25 PLP jest CONFIG_EXPERIMENTAL.

       Ta strona podręcznika jest niekompletna.

       Nie  ma  jeszcze  przeznaczonego  dla  programistów  aplikacji  pliku nagłówkowego; trzeba
       posługiwać się plikiem nagłówkowym jądra <linux/x25.h>. Z CONFIG_EXPERIMENTAL może wynikać
       niezgodność interfejsu binarnego w przyszłych wersjach.

       Zdarzenia  X.25  N-Reset  nie propagują się jeszcze do procesów użytkownika. Wobec tego, w
       przypadku wystąpienia błędu, dane mogą zostać utracone bez ostrzeżenia.

ZOBACZ TAKŻE

       socket(2), socket(7)

       Jonathan Simon Naylor: “The Re-Analysis  and  Re-Implementation  of  X.25”.  Dostępne  pod
       adresem ⟨ftp://ftp.pspt.fi/pub/ham/linux/ax25/x25doc.tgz⟩.

O STRONIE

       Angielska  wersja  tej  strony  pochodzi  z  wydania  3.71  projektu Linux man-pages. Opis
       projektu, informacje dotyczące zgłaszania błędów, oraz najnowszą  wersję  oryginału  można
       znaleźć pod adresem http://www.kernel.org/doc/man-pages/.

TŁUMACZENIE

       Autorami   polskiego   tłumaczenia   niniejszej   strony   podręcznika   man  są:  Andrzej
       Krzysztofowicz (PTM) <ankry@mif.pg.gda.pl>, Robert Luberda  <robert@debian.org>  i  Michał
       Kułach <michal.kulach@gmail.com>.

       Polskie  tłumaczenie jest częścią projektu manpages-pl; uwagi, pomoc, zgłaszanie błędów na
       stronie  http://sourceforge.net/projects/manpages-pl/.  Jest   zgodne   z   wersją    3.71
       oryginału.