⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 authenticating.c

📁 NAT打洞
💻 C
字号:
#include "common.h"
#include "authenticating.h"
#include "protocol.h"
#include "proxy_socket.h"
#include "borzoi_c.h"

int authenticating(SOCKET proxy, char *username){
	char buff[BUFFER_SIZE];
  	char buf_pk[PUBLIC_KEY_LEN];
  	char buf_sk[PRIVATE_KEY_LEN];
  	char key[SYMMETRIC_KEY_LEN];
  	int len;
  	int i;
  	int nsize;
    if(username == NULL){
  		return 1;
  	}
  	if(open_public_key(username, buf_pk) != 0){
  		return 1;
  	}
  	sprintf(buff, "%s: %s; %d\n", proxyAuth1, username, PUBLIC_KEY_LEN);
  	len = strlen(buff);
  	for(i = 0; i < PUBLIC_KEY_LEN; i++){
  		buff[len + i] = buf_pk[i];
  	}
  	if(
    	HAS_SOCKET_ERROR(
    		send(proxy, buff, len + PUBLIC_KEY_LEN, 0)
    	)
  	){
    	handle_error(__FILE__, __LINE__);
    	return 0;
  	}
  	if(
    	HAS_SOCKET_ERROR(
		    (nsize=recv(proxy, buff,
                    BUFFER_SIZE-1,0))
    	)
  	){
    	handle_error(__FILE__, __LINE__);
    	return 0;
  	}
  	// 耱噔桁 玎忮瘌帼

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -