[<<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 }
. . .