Lines Matching refs:sin6
321 sa6_embedscope(struct sockaddr_in6 *sin6, int defaultok) in sa6_embedscope() argument
325 if ((zoneid = sin6->sin6_scope_id) == 0 && defaultok) in sa6_embedscope()
326 zoneid = scope6_addr2default(&sin6->sin6_addr); in sa6_embedscope()
329 (IN6_IS_SCOPE_LINKLOCAL(&sin6->sin6_addr) || in sa6_embedscope()
330 IN6_IS_ADDR_MC_INTFACELOCAL(&sin6->sin6_addr))) { in sa6_embedscope()
341 sin6->sin6_addr.s6_addr16[1] = htons(zoneid & 0xffff); in sa6_embedscope()
342 sin6->sin6_scope_id = 0; in sa6_embedscope()
352 sa6_recoverscope(struct sockaddr_in6 *sin6) in sa6_recoverscope() argument
357 if (IN6_IS_SCOPE_LINKLOCAL(&sin6->sin6_addr) || in sa6_recoverscope()
358 IN6_IS_ADDR_MC_INTFACELOCAL(&sin6->sin6_addr)) { in sa6_recoverscope()
362 zoneid = ntohs(sin6->sin6_addr.s6_addr16[1]); in sa6_recoverscope()
372 if (sin6->sin6_scope_id != 0 && in sa6_recoverscope()
373 zoneid != sin6->sin6_scope_id) { in sa6_recoverscope()
377 ip6_sprintf(ip6buf, &sin6->sin6_addr), in sa6_recoverscope()
378 sin6->sin6_scope_id); in sa6_recoverscope()
380 sin6->sin6_addr.s6_addr16[1] = 0; in sa6_recoverscope()
381 sin6->sin6_scope_id = zoneid; in sa6_recoverscope()