Lines Matching defs:sun_path
96 char sun_path[UNIX_PATH_MAX];
873 if (len > sizeof(sun_ad.sun_path)) {
876 (UV)len, (UV)sizeof(sun_ad.sun_path));
877 len = sizeof(sun_ad.sun_path);
893 Copy("\\socket", sun_ad.sun_path, off, char);
894 Copy(pathname_pv, sun_ad.sun_path + off, len, char);
896 s = sun_ad.sun_path + off - 1;
903 Copy(pathname_pv, sun_ad.sun_path, len, char);
906 if (len > 1 && sun_ad.sun_path[0] == '\0') {
912 addr_len = (char *)&(sun_ad.sun_path) - (char *)&sun_ad + len;
964 if (addr.sun_path[0] == '\0') {
967 addr_len = (char *)&addr - (char *)&(addr.sun_path) + sockaddrlen;
972 /* On *BSD sun_path not always ends with a '\0' */
973 int maxlen = addr.sun_len - 2; /* should use STRUCT_OFFSET(struct sockaddr_un, sun_path) instead of 2 */
974 if (maxlen > (int)sizeof(addr.sun_path))
975 maxlen = (int)sizeof(addr.sun_path);
977 const int maxlen = (int)sizeof(addr.sun_path);
979 while (addr_len < maxlen && addr.sun_path[addr_len])
983 ST(0) = sv_2mortal(newSVpvn(addr.sun_path, addr_len));