Telnet服务器接收字符处理流程
2016-07-07 13:46
363 查看
最近在分析telnet服务器端源代码,现整理接收字符大致流程,以便后续回顾
1、服务器main函数在telnetd.c中,处理完参数后,最终调用doit函数开启输入扫描
2、doit函数做以下几件事
1)首先调用getpty获取虚拟终端,这很重要,后续的字符处理都有虚拟终端负责。
2)启动登录进程
3)启动telnet服务进程(调用telnet函数)
3、telnet函数是服务进程的主循环,扫描到输入时,调用telrcv函数处理输入内容
4、telrcv函数按照telnet标准协议对输入字符做转义等分析处理,并调用ptyflush将字符输入虚拟终端
5、ptyflush函数通过write函数将输入字符写入虚拟终端,后续的协议执行就有虚拟终端来处理了。
后续关于虚拟终端如何执行telnet指令,再开新文章来分析。
1、服务器main函数在telnetd.c中,处理完参数后,最终调用doit函数开启输入扫描
2、doit函数做以下几件事
1)首先调用getpty获取虚拟终端,这很重要,后续的字符处理都有虚拟终端负责。
2)启动登录进程
3)启动telnet服务进程(调用telnet函数)
3、telnet函数是服务进程的主循环,扫描到输入时,调用telrcv函数处理输入内容
4、telrcv函数按照telnet标准协议对输入字符做转义等分析处理,并调用ptyflush将字符输入虚拟终端
5、ptyflush函数通过write函数将输入字符写入虚拟终端,后续的协议执行就有虚拟终端来处理了。
后续关于虚拟终端如何执行telnet指令,再开新文章来分析。
相关文章推荐
- cmd下开启telnet的方法
- PHP strtotime函数用法、实现原理和源码分析
- jQuery 源码分析笔记(3) Deferred机制
- jQuery 源码分析笔记(5) jQuery.support
- jQuery-1.9.1源码分析系列(十)事件系统之事件包装
- 在telnet下操作memcache详解(操作命令详解)
- 解析:通过php socket并借助telnet实现简单的聊天程序
- Cocos2d-x学习笔记之Hello World源码分析
- Python实现telnet服务器的方法
- PHP源码分析之变量的存储过程分解
- 深入浅析TomCat Session管理分析
- python实现telnet客户端的方法
- Python实现的使用telnet登陆聊天室实例
- Glusterfs3.3.1DHT(hash分布)源代码分析
- 开源中国 OsChina Android 客户端源码分析(1)启动界面 app_start
- 【原创】OpenStack Swift源码分析(二)ring文件的生成
- zg手册 之 python2.7.7源码分析(1)-- python中的对象
- Telnet
- Red hat AS4开启telnet过程
- 'telnet'不是内部或外部命令,也不是可运行的程序或批处理文件