[<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
 Программа-клиент TLI - Пример

Фрагмент программы показывает первые шаги программы-клиента по
использованию транспортного протокола.
14-17     Вызывается t_open  для создания транспортной точки. Файл,
          описывающий протокол,  - /dev/tivc.  SVR4.0 предоставляет
          библиотечные функции  для выполнения  выбора сети  с тем,
          чтобы программисту не пришлось явно указывать имена сетей
          в прикладной  программе. Информация  о  доступных  сетях,
          используемых этими  функциями,  содержится  в  переменной
          среды NETPATH и в файле администратора /etc/netconfig.

19-21     Вызывается t_bind  для связывания  транспортного адреса с
          точкой предоставления транспортных услуг. Данный процесс,
          клиент,  не   интересуется  тем,  под  каким  адресом  он
          известен  сети,   поэтому  передает   NULL   в   качестве
          аргументов req и ret. Сервер, однако, обычно предпочитает
          быть  привязанным  к  известному  адресу  (с  тем,  чтобы
          клиенты могли  общаться с  ним, используя  этот адрес)  и
          использует ret,  чтобы  убедиться,  что  был  привязан  к
          запрошенному адресу.
                   ПРОГРАММА-КЛИЕНТ TLI - ПРИМЕР
1    #include <stdio.h>
2    #include <tiuser.h>
3    #include <fcntl.h>
4
5    #define SRV_ADDR  1  /* Servers well known address */
6
7    main()
8    {
9        int fd, nbytes, flags = 0;
10        char buf[1024];
11        struct t_call *sndcall;
12        extern int t_errno;
13
14        if((fd = t_open("/dev/tivc",O_RDRW,NULL)) < 0) {
15            t_error("t_open failed");
16            exit(1);
17        }
18
19        if (t_bind(fd, NULL, NULL) < 0) {
20            t_error("t_bind failed");
21            exit(2);
22        }
  . . .