分享
 
 
 

Telnet环境变量

王朝other·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

1.命令名和代码

ENVIRON36

IS0

SEND1

INFO2

VAR0

VALUE1

ESC2

USERVAR3

2.命令含义

IACWILLENVIRON

这个命令的发送者将发送环境变量。

IACWONTENVIRON

这个命令的发送者拒绝发送环境变量。

IACDOENVIRON

这个命令的发送者将接收环境变量。

IACDONTENVIRON

这个命令的发送者拒绝接收环境变量。

IACSBENVIRONSEND[type...[type...[...]]]IACSE

这个命令的发送者请求远端发送它的环境变量。“type”既可以是VAR,也可以是

USERVAR,既用来指定周知变量名又用于指定用户变量名。只有DOENVIRON端可以发

起一个SEND命令。假如指定了一个变量列表,那么只能发送这些变量。假如没有指定列

表,那么就应该发送对所有的周知变量和用户自定义变量都是缺省的环境变量。假如有一个

变量没有命名,那么应该发送在缺省环境中的所有类型的变量(周知或者用户自定义的)。

IACSBENVIRONIStype...[VALUE...][type...[VALUE...][

这个命令的发送者正在发送环境变量。发送这个命令来响应某个SEND请求。只有处

于WILLENVIRON状态的一端可以发送一个IS命令。“type”/VALUE对必须按照和SEND

请求指定的顺序相同的次序来返回,而且必须对每一个明确的“type...”请求都得响应。

“type”会是VAR或者USERVAR。可能发送多重环境变量。在一个“type”后一直到下

一个“type”或VALUE的特征指定了变量名称。Thecharactersfollowinga在一个VALUE

后一直到下一个“type”的特征指定了变量的数值。假如一个“type”后面没有跟一个

VALUE(例如,跟着其他的VAR、USERVAR或者IACSE),那么对这个变量就没有定义。

假如VALUE后面紧跟着一个“type”或者IAC,那么这个变量已经定义了,但是没有数值。

假如某个IAC包含在IS和IACSE中,那么它必须当作IACIA来发送。假如某个变量或者

数值包含了一个VAR,那么它必须当作ESCVAR来发送。

假如某个变量或者数值包含了一个USERVAR,那么它必须当作ESCUSERVAR来发

送。假如一个变量或者数值包含了一个VALUE,那么它必须当作ESCVALUE来发送。如

果某个变量或者数值包含了一个ESC,那么它必须当作ESCESC来发送。

IACSBENVIRONINFOtype...[VALUE...][type...[VALUE...][

这个命令的发送者正在发送有关已经变化了的环境变量的信息。除了在命令中以INFO

替代了IS以外,和IS命令相同。只有处于WILLENVIRON状态的一端可以发送一个INFO

命令。INFO命令不会用于发送初始化信息;SEND/IS序列正是用在这种情况下。INFO命

令用于广播环境变量的变化,而且可以很自然的就产生了。

3.缺省规范

这个选项的缺省规范是

WONTENVIRON

DONTENVIRON

意思是没有任何环境信息的交换。

4.动机

一些操作系统具有包含着当Telnet连接建立时广播给远端机器的信息的启动信息和环

境变量。提出一些新的需要通过一个Telnet会话来广播的信息比每次创建一个新的Telnet

选项更可取,但是Telnet会话自身并不真正需要知道,就可以采用这种普通的信息选项了。

5.周知变量

USER这个变量用于传送客户端想要登录的远程系统上的用户或者帐户名。USER变

量的数值格式由系统决定,由远程系统确定。

JOB这个变量用于传送当登录进入远程系统时客户端想要使用的业务ID号。JOB

变量的数值格式由系统决定,由远程系统确定。

ACCT这个变量用于传送当登录进入远程系统时客户端想要使用的帐户ID号。ACCT

变量的数值格式由系统决定,由远程系统确定。

PRINTER这个变量用于确定打印机输出的缺省位置。因为现在在网络上没有一种标

准的命名方法,所以目前这个变量的格式不明确。

SYSTEMTYPE这个是用于传输这个变量所用的操作系统的类型。它的数值和FTP[2]

中的SYSTEM(SYST)的取值相同。这个值的格式应该和在AssignedNumbers文档[3]的当

前版本中列出的一个系统名称的第一个词一样。

DISPLAY这个变量用于传输客户端的X显示位置。DISPLAY变量的数值格式如下:

<host>:<dispnum>[.<screennum>]

这个消息和通过利用TelnetX-DISPLAY-LOCATION选项得到的信息是相同。假如

DISPLAY环境变量收到的X-DISPLAY-LOCATION选项[4]以及它们包含的不一致信息,应

该使用最近收到的信息。

因为不可能预计到所有用户想要交换的变量,提供了USERVAR类型来支持用户传输

任意的变量/数值对。采用附加类型使得应用可以区分由远端主机软件得到的数值和由用户

提供的数值。偏执些的实现很可能用同级的不信任度对待这两种类型。周知变量和用户变量

之间命名空间冲突的结果是规范应用。

6.应用规则

WILL和DO仅仅用在连接开始时捕捉和承认将来协商的结果。

一旦两个主机已经交换了一个WILL命令和DO命令,DOENVIRON的发送者就可以

自由的请求发送环境变量。一旦DO的发送者可以发送请求(IACSBENVIRONSENDIAC

SE),那么WILL的发送者就可以传输现行的环境变量信息(通过IACSBENVIRONIS...IAC

SE命令)。虽然有时这个选项在整个TELNET连接的过程中都可以使用,但是环境信息交

换还是经常出现在连接启动时。这是因为许多操作系统只具有在过程创建时才传输环境信息

的机制,所以在用户登录前这些信息是必须的。在这一节中,任何引用的事情都是以速记方

式对ASCII数值字符串的进行记录的。例如,“joe”意思是三个八位十进制序列106111101。

接收主机不需要把它从环境中接收到的所有的变量都上传。例如,假如客户机将要通过

发送USERVAR“TERM”VALUE“xterm”这个环境变量来发送时,TERMINAL-TYPE

[1]选项已经用于确定终端类型,服务器就可以忽略TERM变量。同样,一些启动信息也可

以用于其他方面;例如,“USER”、“ACCT”和“PROJ”变量的数值可以用来判定哪一个

帐户已经登录,而且可能从未被上传给用户环境。通常,假如服务器通过一些更精确的方法

已经检测到某个环境变量的数值,或者假如它不能理解某个变量名称,它将忽略在

ENVIRON选项中发送的数值。服务器可能也更喜欢仅仅把所有未知信息上传到用户的环境

中。这是应用中建议的方法,因为它使用户使用起来更加灵活。

以下是一个这个选项的使用范例:

Host1Host2

IACDOENVIRON

IACWILLENVIRON

[现在主机1可以自由的请求环境变量了]

IACSBENVIRONSENDVAR"USER"

VAR"ACCT"VARUSERVARIACSE

[现在,服务器明确请求得到USER和ACCT变量、周知环境变量的缺省设置和用户

自定义变量的缺省设置。注重:客户端两次引用了USER信息;一次是因为它明确请求的,

另一次是因为它是缺省环境的一部分。]

IACSBENVIRONISVAR"USER"

VALUE"joe"VAR"ACCT"VALUE

"kernel"VAR"USER"VALUE"joe"

VAR"DISPLAY"VALUE"foo:0.0"

USERVAR"SHELL"VALUE"/bin/csh"

IACSE

当现在定义了用户变量或者不明确的变量时,对于响应空环境(在IACSB和IACSE中

都没有数据)的客户端,那是合法的。例如:

IACSBENVIRONISIACSE

对下列任何都是有效响应:

IACSBENVIRONSENDIACSE

IACSBENVIRONSENDVARIACSE

IACSBENVIRONSENDUSERVARIACSE

IACSBENVIRONSENDVARUSERVARIACSE

(最后的范例和第一个相同...)

预计,支持TelnetENVIRON选项的任何应用都将完全支持这个规范。

7.涉及的安全问题

对ENVIRON选项的实施者重要的是理解设置选项的交互性和逻辑/证实过程。应该非

常仔细的分析哪个变量在设置客户登录时是“安全的”。一个错误选项的例子将会改一个参

数,答应入侵者废止或损害登录/证实程序本身。

8.参考文献

[1]VanBokkelen,J.,"TelnetTerminal-TypeOption",RFC1091,FTPSoftware,Inc.,

February1989.

[2]Postel,J.andJ.Reynolds,"FileTransferProtocol(FTP)",STD9,RFC959,

USC/InformationSciencesInstitute,October1985.

[3]Reynolds,J.andJ.Postel,"AssignedNumbers",STD2,RFC1340,

USC/InformationSciencesInstitute,July1992.

[4]Marcy,G.,"TelnetXDisplayLocationOption",RFC1096,CarnegieMellon

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有