Changeset 165 for branches/samba-3.0/source/nsswitch/winbind_nss_solaris.c
- Timestamp:
- Mar 11, 2009, 9:14:55 AM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/samba-3.0/source/nsswitch/winbind_nss_solaris.c
r1 r165 361 361 int len = 0; 362 362 struct in_addr *addrp; 363 363 364 struct in6_addr *addrp6; 365 364 366 int i; 365 367 … … 393 395 he->h_addr_list = (char **)ROUND_DOWN(addrp, sizeof (char*)); 394 396 he->h_addr_list -= addrcount+1; 395 } else { 397 } 398 #if defined(AF_INET6) 399 else { 396 400 he->h_length = sizeof(struct in6_addr); 397 401 addrp6 = (struct in6_addr *)ROUND_DOWN(buffer + buflen, … … 401 405 he->h_addr_list -= addrcount+1; 402 406 } 407 403 408 404 409 /* buffer too small?! */ … … 420 425 return NSS_STR_PARSE_ERANGE; 421 426 } 422 } else { 427 } 428 #if defined(AF_INET6) 429 else { 423 430 he->h_addr_list[i] = (char *)&addrp6[i]; 424 431 if (strchr(data, ':') != 0) { … … 436 443 } 437 444 } 445 438 446 data = p+1; 439 447 } … … 483 491 IPv4 to IPv6. 484 492 */ 493 485 494 #ifdef HAVE_NSS_XBYY_KEY_IPNODE 486 495 af = argp->key.ipnode.af_family; … … 493 502 af = AF_INET6; 494 503 #endif 504 495 505 496 506 strncpy(request.data.winsreq, argp->key.name, sizeof(request.data.winsreq) - 1); … … 541 551 ZERO_STRUCT(request); 542 552 553 543 554 /* winbindd currently does not resolve IPv6 */ 544 555 if(argp->key.hostaddr.type == AF_INET6) { … … 548 559 549 560 p = inet_ntop(argp->key.hostaddr.type, argp->key.hostaddr.addr, 550 request.data.winsreq, INET6_ADDRSTRLEN); 561 request.data.winsreq, sizeof request.data.winsreq); 562 #else 563 snprintf(request.data.winsreq, sizeof request.data.winsreq, 564 "%u.%u.%u.%u", 565 ((unsigned char *)argp->key.hostaddr.addr)[0], 566 ((unsigned char *)argp->key.hostaddr.addr)[1], 567 ((unsigned char *)argp->key.hostaddr.addr)[2], 568 ((unsigned char *)argp->key.hostaddr.addr)[3]); 569 #endif 551 570 552 571 ret = winbindd_request_response(WINBINDD_WINS_BYIP, &request, &response);
Note:
See TracChangeset
for help on using the changeset viewer.
