Man pages на русском

         

REX


НАЗВАНИЕ

rex - Протокол удаленного выполнения

СИНТАКСИС

#include <rpcsvc/rex.h>

ОПИСАНИЕ

Сервер удаленного исполнения команд. Допускается указание рабочего каталога и параметров среды выполнения команды, а также переопределение стандартного ввода и вывода команды. Возможно осуществление интерактивного ввода-вывода для тех программ, которые запускаются с терминалов. Работает только с протоколом TCP.

Информация о RPC:


Код (номер) программы:

REXPROG подпрограммы xdr:

int xdr_rex_start(xdrs, start); XDR *xdrs; struct rex_start *start; int xdr_rex_result(xdrs, result); XDR *xdrs; struct rex_result *result; int xdr_rex_ttymode(xdrs, mode); XDR *xdrs; struct rex_ttymode *mode; int xdr_rex_ttysize(xdrs, size); XDR *xdrs; struct rex_ttysize *size; процессы:

REXPROC_START

Принимает структуру rex_start, запускает исполнение команды и возвращает структуру rex_result.

REXPROC_WAIT

Аргументов не имеет, ожидает завершения выполнения команды, возвращает структуру rex_result.

REXPROC_MODES

Принимает структуру rex_ttymode и пересылает режимы работы терминала.

REXPROC_WINCH

Принимает структуру ttysize и пересылает информацию о размерах окна. версии:

REXVERS_ORIG Первоначальная версия структуры:

struct B_sgttyb { char bsg_ispeed; /* скорость ввода */ char bsg_ospeed; /* скорость вывода */ char bsg_erase; /* символ стирания */ char bsg_kill; /* символ удаления */ short bsg_flags; }; struct tchars { char t_intrc; /* прерывание */ char t_quitc; /* выход */ char t_startc; /* запуск вывода */ char t_stopc; /* останов вывода */ char t_eofc; /* конец файла */ char t_brkc; /* разделитель ввода */ }; struct ltchars { char t_suspc; /* сигнал остановки процесса */ char t_dsuspc; /* отложенный сигнал остановки процесса */ char t_rprntc; /* повторный вывод строки */ char t_flushc; /* вывод потоком (ключи) */ char t_werasc; /* стирание слова */ char t_lnextc; /* следующий символ */ };

#define REX_INTERACTIVE 1 /* интерактивный режим */ struct rex_start { char **rst_cmd; /* список команд и аргумен- тов */ char *rst_host; /* имя рабочего каталога host'а */ char *rst_fsname; /* имя каталога файловой системы */ char *rst_dirwithin; /* каталог внутри файловой системы */ char **rst_env; /* список параметров выполне- ния */ ushort rst_port0; /* порт для stdin */ ushort rst_port1; /* порт для stdin */ ushort rst_port2; /* порт для stdin */ ulong rst_flags; /* опции - см. #define выше */ }; struct rex_result { int rlt_stat; /* целочисленный код состоя- ния */ char *rlt_message; /* строка сообщения */ }; struct rex_ttymode { struct B_sgttyb basic; /* флаги для терминала в UNIX версии Berkeley */ struct tchars more; /* прерывание, удаление и т.д. */ struct ltchars yetmore; /* специальные символы в Berkeley */ ulong andmore; /* режимы Berkeley */ }; struct ttysize { int ts_lines; /* количество строк на экране терминала */ int ts_cols; /* количество столбцов на экране терминала */ };

СМ. ТАКЖЕ



Содержание раздела