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
Fish gives warning at start on Haiku #3317
Comments
I wonder if Haiku supports UNIX domain sockets? That would be the first thing to check. |
As far as i know Haiku supports Unix domain sockets. |
Yes, Haiku support the unix domain sockets: http://cgit.haiku-os.org/haiku/tree/src/add-ons/kernel/network/protocols/unix |
Can you run fish with |
It's got to be the crazy assumptions we make in |
I had noticed when debugging the issue with FreeBSD 11 that on that VM (my interfaces were https://github.com/fish-shell/fish-shell/blob/master/src/env_universal_common.cpp#L902-L930 #ifdef SIOCGIFHWADDR
// Linux
#include <net/if.h>
static bool get_mac_address(unsigned char macaddr[MAC_ADDRESS_MAX_LEN],
const char *interface = "eth0") {
bool result = false;
const int dummy = socket(AF_INET, SOCK_STREAM, 0);
...
}
#elif defined(HAVE_GETIFADDRS)
// OS X and BSD
#include <ifaddrs.h>
#include <net/if_dl.h>
static bool get_mac_address(unsigned char macaddr[MAC_ADDRESS_MAX_LEN],
const char *interface = "en0") {
// BSD, Mac OS X
struct ifaddrs *ifap;
bool ok = false;
}
|
Though it seems it is just the preprocessor picking by |
floam, thanks for your help. |
I hadn't. |
Ok, here is the ` <2> fish: Sorry, but your system does not support backtraces <2> fish: Sorry, but your system does not support backtraces <2> fish: Sorry, but your system does not support backtraces <2> fish: Sorry, but your system does not support backtraces <2> fish: Sorry, but your system does not support backtraces |
Yes, you have right, the interfaces could have different names. |
Cool, nice patch! Thanks for writing that! The check for |
It is already committed: a872d9c But terer is something wrong with the IPV6 support in Haiku, and the warnings aren't nice at the start. |
Fixing the |
Any other idea about the warning? I'm just a bit tired about it. |
Can you show the current warnings? I imagine it's something along the lines of |
There is nothing else there. |
The warning happens here: In the latest haiku patch i just commented this line out. I know it isn't ideal, but it doesn't break anything, and it will never upstreamed. Btw i'm all ears if somebody have better idea how to silence the wrnings. |
Haiku supports only AF_UNIX SOCKS_STREAM, but not the required SOCK_DGRAM. That not implemented yet, that's why i get the warnings at start. See here: https://github.com/haiku/haiku/blob/master/src/add-ons/kernel/network/protocols/unix/unix.cpp#L435 |
I think we can close this issue. |
The socket code is super-old at this point and only used to detect old versions of fish running. I think we can remove it at this point. #3669 tracks removing it. |
Oh, thanks for the info, i had no idea, why this socket handling code required. |
MAP_FILE is unspecified or ignored on Linux, Solaris, FreeBSD and Haiku; it is the default on OS X. Work on fish-shell#3317 & fish-shell#3340.
sh -c 'env HOME=$(mktemp -d) fish'
)?fish version installed (
fish --version
):2.3.1
OS/terminal used:
Haiku gcc2h, hrev50498, with gcc 5.4.0
At starting fish in Haiku terminal i get the following:
Reproduction steps
Hard to explain? Link to a screen recording
Expected results
Fish should not write warnings to the terminal.
Actual results
4
(but just on my laptop, the real result could be something else, so no guarantee. The result here is under MIT license.
The text was updated successfully, but these errors were encountered: