Server for Information Technologies ������ ��������������
������� �������������� ����������
(095) 932-9212, 932-9213, 939-0783
E-mail: [email protected]
������ �������� ����(!) ������������� ���������� CIT Forum CD-ROM

DIAL(3C)

��������
dial - ������������ ����� ����� ������������ �����

���������

	#include <dial.h>

	int dial (call)
	CALL *call;
	
	void undial (fd)
	int fd;

��������
������� dial ���������� ���������� ����� ��� ������������ �����, �������� �� ����/�����. ���������� ������� dial �������� ��������� �� ��������� ���� CALL (��� ��������� �� ���������� ����� ).

����� ���������� ������ � ������ ��������� ������ ������� ������� undial, ����� ���������� �������, ������������� � ������ ������� ������������� ����������.

��� ��������� CALL ������������ �� ���������� ����� ��������� �������:

	typedef struct {
	  struct termio *attr; /* ���������  �� ��������� ����-
	                          ����� termio */
	  int baud;            /* �������� �������� */
	  int speed;           /* ����� 212A: 300 ��� 1200 */
	  char *line;          /* ��� ���������� ��� ���������-
	                          ��� ����� */
	  char *telno;         /* ��������� �� ������� -  �����
	                          �������� */
	  int modem;           /* ���������� ������� ��� �����-
	                          �� ���������� */
	  int *device;         /* ����  ����� �������� ��� ���-
	                          �������, ����� �������  ����-
	                          ������� ���������� */
	  int dev_len;         /* ����� ����� ���������� */
	} CALL;

������� speed ������������ ������ ��� ������������� ��� ������������ ���������� �� ���������� �����; � ���� ������ ��� �������� ������ ��������� 300 ��� 1200 ��� ������� 113A ��� 212A. �������, ��� ����� 113A, � ����� ����� 212A, ������������� � ��������������� �����, ����� ���������� �� ����� �������� �� 0 �� 300 ��� � �������. ������ ����� 212A, ������������� � ���������������� ����� ����� ���������� � ��������� ������ �� �������� 1200 ��� � �������.

������� baud ������ �������� �������� ��������. ��������, ����� ���������� baud ������ 110, � speed ������ 300. ������ ���� ��������� speed ����� 1200, baud ����� ������ ��������� 1200.

���� ������ ������������ ����� �������� ������ �����������, �� ��������� �� ��� ���������� ������ ���� ������� � ������� line. ���������� �������� ��� ����� ������������ ��������� ���������� � ����� L-devices. � ���� ������ �� ��������� ��������� ������� baud, ��� �������� ������������ �� ����� L-devices.

������� telno �������� ���������� �� ������� ��������, �������������� ���������� �����, �� �������� ������ ��������� ����������. ������������� ������ �� ����� �������� � �������, ������������ dial, ��������� ������� ������� ��� ����.

������� modem ������������� ���������� ������� � ������ ������� ����������. ���� ��������� ���������� �������, ���� ������� ������ ���� ���������.

������� attr �������� ���������� �� ��������� ���� termio, ��������� �� ���������� ����� . ������� attr ����� ���� ����� NULL, �� ���� ��� �� ���, �� ��� ��������, �������� ������������ ��������� termio, ����� ����������� ��� ������������ ����� ����� �������� ��������� ����������, ��� ����������� ��� ����� ���������, ��� �������� � �������� ��������.

������� device ������������ ��� �������� ����� ����������, ����� ������� ���� ����������� ����������.

������� devlen �������� ����� ����� ����������, ����������� � ������ device.

�����

	/usr/lib/uucp/L-devices
	/usr/spool/uucp/LCK..����������

��. �����
uucp(1C) � ����������� ������������.
alarm(2), read(2), write(2).
termio(7) � ����������� ��������������.

�����������
� ������ ���������� ���������� ������������ ������������� ��������, �� �������� ������� �������. ��������� ��� ���� ������������� ����� ���������� ���������� �� ���������� ����� <dial.h>:

	INTRPT (-1)   /* ��������� ���������� */
	D_HUNG (-2)   /*  ��������  ������  (����� �������� ������) */
	NO_ANS (-3)   /* � ������� 10 ������ ��� ������ */
	ILL_BD (-4)   /* ������������ �������� ������ */
	A_PROB (-5)   /* ������ ��� ������ ������ */
	L_PROB (-6)   /* ������ � ����� ����� */
	NO_Ldv (-7)   /* �� ����������� ���� L-devices */
	DV_NT_A (-8)  /* ��������� ���������� ���������� */
	DV_NT_K (-9)  /* ��������� ���������� ���������� */
	NO_BD_A (-10) /* ��� ��������� ��������� ��� ������  ��
        		 ��������� �������� ������ */
	NO_BD_K (-11) /*  ��� ��������� ��������� ��� ������ ��
        		  ��������� �������� ������ */

���������������
������� dial(3C) ������������ �� ������������ �������� ���������� (��. ��������� 1C) ������ 5 �� UNIX.

��������� ����� <dial.h> ������������� �������� � ��������� ����� <termio.h>.

��������� ������� dial �������� ���� <stdio.h>, ������ ��������, �� ������������ ����������� ����/����� ������ dial, ����� ��������� ������ ����������.

��������
������� dial ������ ��������� ����� alarm(2) �� 3600 ������ � ����� ������������� ������ SIGALRM, "��������" ����-������� LCK..���������� � ����������� ��� ����� ��������� �����. ��� �������� ���� uucp(1C) ����� ������� ���� LCK..���������� �� ����� ����� ������� ������, ������������� ������ 90 �����. ���� ������ SIGALRM ������ �� ����� ���������� ������������� ��������� ������� read(2) ��� write(2), ��� ���������� ��������. ���� ��������� ������������ ������ ����������� ����� ����, � ������ ������� ��������� ������� read ������� ��������� �������� ���������� errno (errno==EINTR), ����� ���� read ������ ���� ����� ��������.
Comments: [email protected]
Designed by Andrey Novikov
Copyright © CIT