易截截图软件、单文件、免安装、纯绿色、仅160KB

linux 密码回显

一,绪论
1.课题背景
Linux下有系统提供的getpass()函数,可由于写的时候太早了,只支持8位字符,同时有安全隐患(溢出!),Linux出于对密码的保密,输入的字符是不会显示到屏幕上的。在登陆函数和密码修改函数内都没有提供密码回显提示,但是此设计对于一般的桌面级应用的初级用户带来了一定的麻烦,而且,没有任何密码遗忘提示功能,一旦遗忘,只能重设,作为用户定制功能,如何在linux c下实现密码回显和提示功能的登录和密码修改模块呢。
2.参考资料
Linux编程技术详解   杜华 编著 人民邮电出版社
http://www.fanqiang.com
http://csdn.net/
二,实现过程
1.首先,我编写了在windows c下的密码回显的代码
程序1.c代码如下:
#include <stdio.h> 
#include <conio.h> 
#define TRUE 1 
#define FALSE 0 
#define MIN_INPUT 0x20 
#define MAX_INPUT 0x7e 
/* 
* 所有功能有此函数实现: 
* pszPw : 保存密码的缓冲 
* iMaxSize :最大的密码长度,该长度必须小于缓冲区大小。 
* 返回值为TRUE为成功获取密码。总是返回TRUE 
*/ 
int GetPassword(unsigned char* pszPw,int iMaxSize) 

unsigned char ch; 
int i=0; 
int bIsEcho=TRUE; 
//while( ! kbhit() && i<iMaxSize ) 
while( ( ch = (unsigned char)getch() ) && i < iMaxSize ) 

//ch = (unsigned char)getch(); 
bIsEcho=TRUE; 
if ( ch == 13) 

pszPw[i++]=0; 
break; 

else if ( ch >= MIN_INPUT && ch <= MAX_INPUT) /*所有可打印字符*/ 

pszPw[i++]=ch; 

else if ( ch == 8 && i> 0 ) /*退格键*/ 

pszPw[i--] = 0; 
bIsEcho = FALSE; 
putchar(


相关文档:

Linux下80端口被占用

解决方案:linux 下将tomcat的server.xml的端口改为80后以tomcat身份无法启动tomcat。
 
在redhat上启动tomcat(将server.xml中的端口改为80)
 
su - tomcat -c "$CATALINA_HOME/bin/startup.sh"
 
后出现:Catalina.start: LifecycleException: null.open: java.net.BindException: Permission deni ......

Linux下让非root用户启用小于1024号的端口


以下是找到的Linux的资料,Solairs、AIX等应当有所不同,请跟进
方法一:端口映射
1、iptables命令:iptables -t nat -A PREROUTING -p tcp --dport <低端口> -i eth0 -j REDIRECT --to-port <原先监听的高端口>
2、rinetd程序
3、ipchans命令:ipchans -I input --proto TCP --dport <低端口> - ......

Linux进程间通讯之消息队列


1. 基本概念
消息队列的最佳定义是:内核地址空间中的内部链表。消息可以顺序地发送到队列中,
并以几种不同的方式从队列中获取。当然,每个消息队列都是由 IPC标识符所唯一标识的。
2. 内部和用户数据结构
要完成理解象系统 V IPC这样复杂的问题,关键是要彻底熟悉内核的几个内部数据结构。
甚至对那些最基本的操作 ......

linux下的读配置文件的程序

config.h
/*--  
   
  Copyright   (c)   2004   Shenzhen   Huaren   Education   Co.Ltd  
   
  File   Name:  
  config.h  
  Ver ......

Linux双网卡绑定实现负载均衡和失效保护

这介绍的Linux双网卡绑定实现就是使用两块网卡虚拟成为一块网卡,这个聚合起来的设备看起来是一个单独的以太网接口设备,通俗点讲就是两块网卡具有相同的IP地址而并行链接聚合成一个逻辑链路工作。其实这项技术在Sun和Cisco中早已存在,被称为Trunking和Etherchannel 技术,在Linux的2.4.x的内核中就采用了这种技术,被称为 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号