亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? srp-entry.c

?? 自己精簡過的PPPD代碼。在嵌入中應用可以更好的發揮。比原先的小了很多
?? C
字號:
/* * Utility program for generating entries in /etc/ppp/srp-secrets * * Copyright (c) 2001 by Sun Microsystems, Inc. * All rights reserved. * * Non-exclusive rights to redistribute, modify, translate, and use * this software in source and binary forms, in whole or in part, is * hereby granted, provided that the above copyright notice is * duplicated in any source form, and that neither the name of the * copyright holder nor the author is used to endorse or promote * products derived from this software. * * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. * * Original version by James Carlson * * Usage: *	srp-entry [-i index] [clientname] * * Index, if supplied, is the modulus/generator index from * /etc/tpasswd.conf.  If not supplied, then the last (highest * numbered) entry from that file is used.  If the file doesn't exist, * then the default "well known" EAP SRP-SHA1 modulus/generator is * used. * * The default modulus/generator can be requested as index 0. */#include <stdio.h>#include <stdlib.h>#include <unistd.h>#include <string.h>#include <ctype.h>#include <t_pwd.h>#ifndef	SOL2#define	getpassphrase	getpass#endif#define	HAS_SPACE	1#define	HAS_DQUOTE	2#define	HAS_SQUOTE	4#define	HAS_BACKSLASH	8static const u_char wkmodulus[] = {	0xAC, 0x6B, 0xDB, 0x41, 0x32, 0x4A, 0x9A, 0x9B,	0xF1, 0x66, 0xDE, 0x5E, 0x13, 0x89, 0x58, 0x2F,	0xAF, 0x72, 0xB6, 0x65, 0x19, 0x87, 0xEE, 0x07,	0xFC, 0x31, 0x92, 0x94, 0x3D, 0xB5, 0x60, 0x50,	0xA3, 0x73, 0x29, 0xCB, 0xB4, 0xA0, 0x99, 0xED,	0x81, 0x93, 0xE0, 0x75, 0x77, 0x67, 0xA1, 0x3D,	0xD5, 0x23, 0x12, 0xAB, 0x4B, 0x03, 0x31, 0x0D,	0xCD, 0x7F, 0x48, 0xA9, 0xDA, 0x04, 0xFD, 0x50,	0xE8, 0x08, 0x39, 0x69, 0xED, 0xB7, 0x67, 0xB0,	0xCF, 0x60, 0x95, 0x17, 0x9A, 0x16, 0x3A, 0xB3,	0x66, 0x1A, 0x05, 0xFB, 0xD5, 0xFA, 0xAA, 0xE8,	0x29, 0x18, 0xA9, 0x96, 0x2F, 0x0B, 0x93, 0xB8,	0x55, 0xF9, 0x79, 0x93, 0xEC, 0x97, 0x5E, 0xEA,	0xA8, 0x0D, 0x74, 0x0A, 0xDB, 0xF4, 0xFF, 0x74,	0x73, 0x59, 0xD0, 0x41, 0xD5, 0xC3, 0x3E, 0xA7,	0x1D, 0x28, 0x1E, 0x44, 0x6B, 0x14, 0x77, 0x3B,	0xCA, 0x97, 0xB4, 0x3A, 0x23, 0xFB, 0x80, 0x16,	0x76, 0xBD, 0x20, 0x7A, 0x43, 0x6C, 0x64, 0x81,	0xF1, 0xD2, 0xB9, 0x07, 0x87, 0x17, 0x46, 0x1A,	0x5B, 0x9D, 0x32, 0xE6, 0x88, 0xF8, 0x77, 0x48,	0x54, 0x45, 0x23, 0xB5, 0x24, 0xB0, 0xD5, 0x7D,	0x5E, 0xA7, 0x7A, 0x27, 0x75, 0xD2, 0xEC, 0xFA,	0x03, 0x2C, 0xFB, 0xDB, 0xF5, 0x2F, 0xB3, 0x78,	0x61, 0x60, 0x27, 0x90, 0x04, 0xE5, 0x7A, 0xE6,	0xAF, 0x87, 0x4E, 0x73, 0x03, 0xCE, 0x53, 0x29,	0x9C, 0xCC, 0x04, 0x1C, 0x7B, 0xC3, 0x08, 0xD8,	0x2A, 0x56, 0x98, 0xF3, 0xA8, 0xD0, 0xC3, 0x82,	0x71, 0xAE, 0x35, 0xF8, 0xE9, 0xDB, 0xFB, 0xB6,	0x94, 0xB5, 0xC8, 0x03, 0xD8, 0x9F, 0x7A, 0xE4,	0x35, 0xDE, 0x23, 0x6D, 0x52, 0x5F, 0x54, 0x75,	0x9B, 0x65, 0xE3, 0x72, 0xFC, 0xD6, 0x8E, 0xF2,	0x0F, 0xA7, 0x11, 0x1F, 0x9E, 0x4A, 0xFF, 0x73};static const char *myname;static voidusage(void){	(void) fprintf(stderr, "Usage:\n\t%s [-i index] [clientname]\n",	    myname);	exit(1);}intmain(int argc, char **argv){	struct t_conf *tc;	struct t_confent *tcent, mytce;	struct t_pw pwval;	char *name;	char pname[256];	char *pass1, *pass2;	int flags, idx;	char *cp;	char delimit;	char strbuf[MAXB64PARAMLEN];	char saltbuf[MAXB64SALTLEN];	if ((myname = *argv) == NULL)		myname = "srp-entry";	else		argv++;	idx = -1;	if (*argv != NULL && strcmp(*argv, "-i") == 0) {		if (*++argv == NULL)			usage();		idx = atoi(*argv++);	}	tcent = NULL;	if (idx != 0 && (tc = t_openconf(NULL)) != NULL) {		if (idx == -1)			tcent = t_getconflast(tc);		else			tcent = t_getconfbyindex(tc, idx);	}	if (idx <= 0 && tcent == NULL) {		mytce.index = 0;		mytce.modulus.data = (u_char *)wkmodulus;		mytce.modulus.len = sizeof (wkmodulus);		mytce.generator.data = (u_char *)"\002";		mytce.generator.len = 1;		tcent = &mytce;	}	if (tcent == NULL) {		(void) fprintf(stderr, "SRP modulus/generator %d not found\n",		    idx);		exit(1);	}	if ((name = *argv) == NULL) {		(void) printf("Client name: ");		if (fgets(pname, sizeof (pname), stdin) == NULL)			exit(1);		if ((cp = strchr(pname, '\n')) != NULL)			*cp = '\0';		name = pname;	}	for (;;) {		if ((pass1 = getpassphrase("Pass phrase: ")) == NULL)			exit(1);		pass1 = strdup(pass1);		if ((pass2 = getpassphrase("Re-enter phrase: ")) == NULL)			exit(1);		if (strcmp(pass1, pass2) == 0)			break;		free(pass1);		(void) printf("Phrases don't match; try again.\n");	}	memset(&pwval, 0, sizeof (pwval));	t_makepwent(&pwval, name, pass1, NULL, tcent);	flags = 0;	for (cp = name; *cp != '\0'; cp++)		if (isspace(*cp))			flags |= HAS_SPACE;		else if (*cp == '"')			flags |= HAS_DQUOTE;		else if (*cp == '\'')			flags |= HAS_SQUOTE;		else if (*cp == '\\')			flags |= HAS_BACKSLASH;	delimit = flags == 0 ? '\0' : (flags & HAS_DQUOTE) ? '\'' : '"';	if (delimit != '\0')		(void) putchar(delimit);	for (cp = name; *cp != '\0'; cp++) {		if (*cp == delimit || *cp == '\\')			(void) putchar('\\');		(void) putchar(*cp);	}	if (delimit != '\0')		(void) putchar(delimit);	(void) printf(" * %d:%s:%s *\n",	    pwval.pebuf.index, t_tob64(strbuf,		(char *)pwval.pebuf.password.data, pwval.pebuf.password.len),	    t_tob64(saltbuf, (char *)pwval.pebuf.salt.data,		pwval.pebuf.salt.len));	return 0;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线视频综合导航| 99精品桃花视频在线观看| 欧美乱妇一区二区三区不卡视频| 亚洲色欲色欲www在线观看| 99视频一区二区| 一区二区三区四区不卡在线 | 欧美日韩国产中文| 午夜成人免费电影| 日韩一区二区三区免费观看| 精品一区二区国语对白| 国产亚洲福利社区一区| 91九色02白丝porn| 日本欧美一区二区三区乱码| 欧美mv日韩mv亚洲| 成人久久视频在线观看| 伊人色综合久久天天| 日韩一区二区精品葵司在线| 国产精品1024| 一区二区三区不卡视频| 欧美一区二区女人| 国产精品77777| 一区二区三区四区不卡在线 | 精品国产乱码久久久久久浪潮| 国产综合久久久久久久久久久久| 国产欧美1区2区3区| 91黄色免费观看| 免费日本视频一区| 亚洲黄色录像片| 久久久噜噜噜久久人人看 | 亚洲欧美日韩一区二区三区在线观看 | 欧美乱熟臀69xxxxxx| 国产黑丝在线一区二区三区| 亚洲另类在线一区| 欧美精品一区二区三区高清aⅴ | 粉嫩在线一区二区三区视频| 亚洲国产视频一区| 国产精品每日更新| 欧美一区二区黄| 色婷婷激情久久| 国产精品影视网| 日韩制服丝袜av| 中文字幕精品—区二区四季| 777奇米成人网| 99在线精品视频| 国产伦精品一区二区三区免费迷| 亚洲一区二区三区四区在线免费观看 | 国产aⅴ综合色| 亚洲3atv精品一区二区三区| 欧美国产日产图区| 久久影视一区二区| 欧美伦理电影网| 欧美亚洲综合久久| 91在线观看视频| 国产精品综合视频| 日本道精品一区二区三区| 国产高清精品网站| 免费高清不卡av| 视频在线观看91| 亚洲精品欧美综合四区| 国产欧美一区二区精品性| 欧美一级二级三级蜜桃| 欧美吞精做爰啪啪高潮| 色综合久久久久综合| 91影院在线免费观看| av激情综合网| 91麻豆国产福利精品| 99久久er热在这里只有精品15| 国产成人精品综合在线观看| 精品一区二区三区日韩| 毛片基地黄久久久久久天堂| 日韩精品乱码免费| 日韩专区一卡二卡| 五月婷婷欧美视频| 亚洲成av人片一区二区三区| 亚洲综合小说图片| 一区二区三区中文字幕电影 | 一本久久综合亚洲鲁鲁五月天 | 亚洲美女少妇撒尿| 自拍偷拍亚洲欧美日韩| 国产清纯白嫩初高生在线观看91| 久久久久久久久久久久久夜| 久久综合狠狠综合久久综合88| 精品成人a区在线观看| 欧美成人vr18sexvr| 日韩你懂的在线播放| 日韩精品一区二区三区视频在线观看| 69久久99精品久久久久婷婷 | 日一区二区三区| 日本亚洲欧美天堂免费| 麻豆精品一二三| 国产91在线|亚洲| 成人黄动漫网站免费app| 色综合久久中文综合久久牛| 欧美三级蜜桃2在线观看| 91精品国产免费| 久久久五月婷婷| 亚洲天堂av一区| 亚洲成av人片一区二区| 麻豆国产一区二区| 国产99久久久久久免费看农村| 一本到不卡精品视频在线观看| 欧美视频中文一区二区三区在线观看| 日韩三级高清在线| 国产欧美一区二区三区网站| 一区二区三区四区蜜桃| 免费人成精品欧美精品| 成人免费视频国产在线观看| 欧洲视频一区二区| 精品福利视频一区二区三区| 中文字幕欧美一| 日韩avvvv在线播放| 国产精品夜夜爽| 欧美色涩在线第一页| 久久噜噜亚洲综合| 亚洲一区二区欧美激情| 欧美日本乱大交xxxxx| 久久夜色精品国产噜噜av| 亚洲欧美日韩在线不卡| 久久99久久久久| 色94色欧美sute亚洲13| 精品福利在线导航| 一二三四区精品视频| 国产在线播放一区二区三区| 在线亚洲+欧美+日本专区| 国产丝袜美腿一区二区三区| 亚洲va欧美va天堂v国产综合| 国产精品主播直播| 欧美久久高跟鞋激| 亚洲欧美在线视频| 精品在线播放免费| 欧美精品日日鲁夜夜添| 国产精品久久福利| 国内一区二区在线| 91精品国产品国语在线不卡| 亚洲老司机在线| 播五月开心婷婷综合| 久久综合视频网| 青青草91视频| 欧美日韩成人综合| 一区二区三区国产精品| av高清不卡在线| 国产日韩欧美不卡在线| 国产制服丝袜一区| 欧美一区二区三区日韩| 亚洲成人在线免费| 欧美性极品少妇| 亚洲综合色成人| 91网上在线视频| 国产精品福利电影一区二区三区四区| 韩国一区二区视频| 欧美大片日本大片免费观看| 午夜电影一区二区三区| 在线视频国内一区二区| 亚洲女厕所小便bbb| 北岛玲一区二区三区四区| 国产精品卡一卡二卡三| 国产a久久麻豆| 国产欧美一区二区精品忘忧草| 国产精品一区二区久久不卡| 精品国产网站在线观看| 久久成人久久鬼色| 日韩精品一区国产麻豆| 老司机免费视频一区二区| 欧美一级一级性生活免费录像| 青青国产91久久久久久| 欧美一区二视频| 另类的小说在线视频另类成人小视频在线| 欧美日韩一二区| 日韩国产欧美在线播放| 日韩午夜电影av| 国内精品第一页| 欧美激情一区二区三区四区| 成人免费视频一区| 亚洲欧美成人一区二区三区| 日本乱人伦aⅴ精品| 性感美女久久精品| 制服丝袜中文字幕一区| 精品在线你懂的| 中文字幕av一区二区三区高| 99久久国产综合精品女不卡| 亚洲激情在线播放| 精品污污网站免费看| 秋霞电影网一区二区| 久久久久99精品一区| 91婷婷韩国欧美一区二区| 亚洲国产精品久久久男人的天堂| 欧美猛男男办公室激情| 黄网站免费久久| 亚洲欧美激情一区二区| 欧美一区二区免费| 成人avav在线| 亚洲不卡av一区二区三区| 精品剧情v国产在线观看在线| 国产成人免费在线视频| 亚洲精品国产a| 精品国产乱码久久久久久久久| proumb性欧美在线观看| 亚洲123区在线观看| 久久久久99精品一区| 欧美三级蜜桃2在线观看|