zonyitoo / sysuh3c

H3C CLI Client for SYSU, which is implemented in C/C++. With an OpenWRT version.
MIT License
115 stars 37 forks source link

The authorization server upgrade #9

Closed benwwchen closed 8 years ago

benwwchen commented 8 years ago

10 月 29 号认证系统升级后重新认证发现 sysuh3c、OH3C、YaH3C 都用不了(至少在部分宿舍楼是这样,不清楚范围)。

而现在用 njit8021xclient 的方式可以认证。已提交 PR(仅 openwrt 分支)。

zonyitoo commented 8 years ago

Good, 可以把c11的branch也更新一下么

benwwchen commented 8 years ago

@zonyitoo 我试了一下把 c11 的分支也改了,但是没能测试成功(错误跟认证部分无关,原版就有以下错误):

在 Ubuntu 16.04 上在 EAP Auth Start 之后输出 Socket recv error,用 perror 输出错误是 Resource temporarily unavailable。相同环境下用 njit8021xclient 可以认证成功。 在 macOS 10.12.1 上运行直接输出 open: Resource busy,似乎是无法访问 /dev/bpf1。

zonyitoo commented 8 years ago

具体Debug一下看看是为什么呢? Resource busy可能把这个bpf1换成pbf2就好了 https://github.com/zonyitoo/sysuh3c/blob/cpp0x/src/eapauth/eaputils.cpp#L88

benwwchen commented 8 years ago

@zonyitoo 试过换成 bpf2 了,换了之后输出ioctl: No buffer space available。错误在 ioctl(bpf_fd, BIOCSETF, &bpfpro) 这一步发生。

有空会再尝试 debug 一下。

zonyitoo commented 8 years ago

@benwwchen 是否有收到其它宿舍的反馈?认证升级是否是全部一起升级?

benwwchen commented 8 years ago

@zonyitoo 根据 #11 反馈好像确实不是全部升级,需要加入自动尝试两种不同验证方式的代码吗?

zonyitoo commented 8 years ago

考虑加个编译选项吧?接受个#define参数来选择

benwwchen commented 8 years ago

@zonyitoo 要不用运行参数来选择?OpenWrt SDK 编译的时候似乎只能通过改 makefile 来改编译选项?

zonyitoo commented 8 years ago

也合理

tobefuturer commented 8 years ago

@benwwchen 能链接成功,但是好像链接不是很稳定,外网经常会断。看日志刷了好多Got EAP Request for Identity,用的是openwrt分支里那个 sysuh3c_0.2-1_2016_ramips.ipk,至六这里应该是升级系统了,老的版本认证无法成功了。

Nov 2 14:13:56 PandoraBox user.info sysuh3c: Got EAP Request for Identity Nov 2 14:13:56 PandoraBox user.info sysuh3c: Got EAP Request for Identity Nov 2 14:14:11 PandoraBox user.info sysuh3c: Got EAP Request for Identity

zonyitoo commented 8 years ago

Got EAP Request for Identity 这是在发心跳包,是会一直发的