无法连接端口 9150 C++

标签 c port tor

我正在尝试使用以下代码连接到本地主机 (TOR) 上的端口 9150:

WORD wVersionRequested = MAKEWORD(2,0);
WSADATA wsaData;
if(WSAStartup(wVersionRequested,&wsaData) != 0)
{
    return 1;
}
int fd = socket(AF_INET, SOCK_STREAM, 0);
if(fd < 0)
{
    printf("error 0");
}

struct sockaddr_in saddr;
saddr.sin_port = htons(9150);
saddr.sin_family = AF_INET;
saddr.sin_addr.s_addr = inet_addr("127.0.0.1");
connect(fd, (struct sockaddr *)&saddr, sizeof(saddr));
if(fd > 0)
{
    printf("error 1");
}

并因“错误 1”而失败。 TOR/Vidalia 正在该端口上运行,一切正常,因此错误肯定出现在我的代码中。请帮助我。

最佳答案

这里的小事情:

#include <stdio.h> /* for perror() */

WORD wVersionRequested = MAKEWORD(2,0);
WSADATA wsaData;
if(WSAStartup(wVersionRequested,&wsaData) != 0)
{
    return 1;
}

int fd = socket(AF_INET, SOCK_STREAM, 0);
int rv = 0;

if(fd < 0)
{
     perror("socket");
     exit(fd); /* or return */
}

struct sockaddr_in saddr;
saddr.sin_port = htons(9150);
saddr.sin_family = AF_INET;
saddr.sin_addr.s_addr = inet_addr("127.0.0.1");

您的核心问题在下面的代码中

rv = connect(fd, (struct sockaddr *)&saddr, sizeof(saddr));
if(rv < 0)
{
     perror("connect");
     exit(rv); /* or return */
}

关于无法连接端口 9150 C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18138142/

相关文章:

apache - 运行 apache 的 Docker 容器总是暴露端口 80

Arduino I²C 库 (Wire) 的 Linux 等价物?

installation - dnf 损坏 : all mirrors were tried

c - 不按回车键获取单个字符

c - 为什么这两个程序都在工作?它是关于使用按位运算符来查找奇数或偶数 (C)

node.js - 如何找出哪个 Node.js pid 在哪个端口上运行

python - 通过tor发出请求,requests.exceptions.ConnectionError Errno 61 : Connection Refused

python - 使用 TOR 运行 python 脚本

c - __attribute__((section ("name"))) 用法?

c - 与C网络编程中的套接字相关的问题