-
Notifications
You must be signed in to change notification settings - Fork 86
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
IPv6 #323
base: master
Are you sure you want to change the base?
IPv6 #323
Conversation
There's still remaining build errors and warnings with Visual Studio. In Address::getIPVersion(), sin6_family is of type ADDRESS_FAMILY, which is typedef'ed to be an unsigned short with Winsock, so there's a warning about a loss of data converting it to an uint8_t. There's the same warning in Address::pack(...) for Then there's a bunch of errors about __in6_u not being a member of in6_addr (which is the type of sin6_addr used in quite a number of places). With Winsock, the in6_addr type only has a |
I've been busy with other projects, sorry. I want to get windows builds working for me locally. If port is being cast to a uint8 someplace, that's a bug. Ports should be 16 bit. |
It was the address family being cast to uint8_t, not the port. |
I created defines for the protocol family so we'd have consistent numbering across platforms. I made use of macros such as IN6_IS_ADDR_V4MAPPED which is available at least on Windows and Linux. I fixed the non-Windows check for NAT64 addressing. This still needs more testing and some of the #ifdef'ed parts could possibly be simplified into something cross-platform.
…orms On Linux there are s6_addr and s6_addr16 (in addition to s6_addr32, but Winsock doesn't have an equivalent) aliases for __in6_u.__u6_add8 and __in6_u.__u6_addr16. Winsock already had s6_addr, so I added s6_addr16 if it isn't defined. This allows common syntax between the platforms. I replaced uses of 32-bit address chunks with 16-bit.
Set the macOS deployment target to 10.13 to match the dependencies. Add CoreHaptics and GameController frameworks to the bzflag client.
This should be ready to merge. Sources and plugins build. one.bzflag.org:5154 and one.bzflag.org:5155 both running my fork.