Ignore:
Timestamp:
Nov 12, 2012, 5:38:52 PM (13 years ago)
Author:
Silvan Scherrer
Message:

Samba Server 3.5: update branche to 3.5.16

Location:
branches/samba-3.5.x/nsswitch
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • branches/samba-3.5.x/nsswitch/pam_winbind.c

    r414 r736  
    438438        }
    439439
    440         if (iniparser_getstr(d, CONST_DISCARD(char *, "global:krb5_ccache_type")) != NULL) {
     440        if (iniparser_getstring(d, CONST_DISCARD(char *, "global:krb5_ccache_type"), NULL) != NULL) {
    441441                ctrl |= WINBIND_KRB5_CCACHE_TYPE;
    442442        }
    443443
    444         if ((iniparser_getstr(d, CONST_DISCARD(char *, "global:require-membership-of"))
     444        if ((iniparser_getstring(d, CONST_DISCARD(char *, "global:require-membership-of"), NULL)
    445445             != NULL) ||
    446             (iniparser_getstr(d, CONST_DISCARD(char *, "global:require_membership_of"))
     446            (iniparser_getstring(d, CONST_DISCARD(char *, "global:require_membership_of"), NULL)
    447447             != NULL)) {
    448448                ctrl |= WINBIND_REQUIRED_MEMBERSHIP;
     
    22912291                }
    22922292
    2293                 parm_opt = iniparser_getstr(ctx->dict, key);
     2293                parm_opt = iniparser_getstring(ctx->dict, key, NULL);
    22942294                TALLOC_FREE(key);
    22952295
  • branches/samba-3.5.x/nsswitch/winbind_krb5_locator.c

    r599 r736  
    183183{
    184184        struct addrinfo *out = NULL;
    185         int ret;
     185        int ret = 0;
     186        struct addrinfo *res = NULL;
    186187        int count = 3;
    187188
     
    207208        }
    208209
    209         ret = cbfunc(cbdata, out->ai_socktype, out->ai_addr);
    210 #ifdef DEBUG_KRB5
    211         if (ret) {
    212                 fprintf(stderr, "[%5u]: smb_krb5_locator_lookup: "
    213                         "failed to call callback: %s (%d)\n",
    214                         (unsigned int)getpid(), error_message(ret), ret);
    215         }
    216 #endif
    217 
    218         freeaddrinfo(out);
     210        for (res = out; res; res = res->ai_next) {
     211                if (!res->ai_addr || res->ai_addrlen == 0) {
     212                        continue;
     213                }
     214
     215                ret = cbfunc(cbdata, res->ai_socktype, res->ai_addr);
     216                if (ret) {
     217#ifdef DEBUG_KRB5
     218                        fprintf(stderr, "[%5u]: smb_krb5_locator_lookup: "
     219                                "failed to call callback: %s (%d)\n",
     220                                (unsigned int)getpid(), error_message(ret), ret);
     221#endif
     222                        break;
     223                }
     224        }
     225
     226        if (out) {
     227                freeaddrinfo(out);
     228        }
    219229        return ret;
    220230}
     
    258268        flags = WBC_LOOKUP_DC_KDC_REQUIRED |
    259269                WBC_LOOKUP_DC_IS_DNS_NAME |
    260                 WBC_LOOKUP_DC_RETURN_DNS_NAME |
    261                 WBC_LOOKUP_DC_IP_REQUIRED;
     270                WBC_LOOKUP_DC_RETURN_DNS_NAME;
    262271
    263272        wbc_status = wbcLookupDomainControllerEx(realm, NULL, NULL, flags, &dc_info);
     
    269278#endif
    270279                return false;
    271         }
    272 
    273         if (dc_info->dc_address) {
    274                 dc = dc_info->dc_address;
    275                 if (dc[0] == '\\') dc++;
    276                 if (dc[0] == '\\') dc++;
    277280        }
    278281
  • branches/samba-3.5.x/nsswitch/winbind_nss_hpux.h

    r414 r736  
    131131        void *returnval;
    132132        int erange;
    133         int h_errno;
     133        /*
     134        *  h_errno is defined as function call macro for multithreaded applications
     135        *  in HP-UX. *this* h_errno is not used in the HP-UX codepath of our nss
     136        *  modules, so let's simply comment it out here:
     137        * int h_errno;
     138        */
    134139        nss_status_t status;
    135140} nss_XbyY_args_t;
Note: See TracChangeset for help on using the changeset viewer.