如何在arm上将sockaddr指针强制转换为sockaddr_in

时间:2017-12-08 00:38:19

标签: c networking arm memory-alignment

我从其他地方复制了以下代码,以从服务器套接字连接获取客户端端口。在一个64位的Linux intel arch上,这可以解决问题,

struct sockaddr        *sa;
struct sockaddr_in     *sin;
unsigned short          sin_port;

sa = conn->local_sockaddr;
sin = (struct sockaddr_in *) sa;
sin_port = ntohs(sin->sin_port);

In Arm它抱怨'错误:施法增加了目标类型所需的对齐'这似乎是合理的。

我认为我不能忽视这一点。有没有办法告诉GCC修复路线,以便我可以读取端口?

0 个答案:

没有答案