Ignore:
Timestamp:
Nov 14, 2012, 12:59:34 PM (13 years ago)
Author:
Silvan Scherrer
Message:

Samba Server: update vendor to 3.6.0

File:
1 edited

Legend:

Unmodified
Added
Removed
  • vendor/current/nsswitch/libwbclient/wbclient.h

    r414 r740  
    6666 *  0.4: Added wbcSidTypeString()
    6767 *  0.5: Added wbcChangeTrustCredentials()
     68 *  0.6: Made struct wbcInterfaceDetails char* members non-const
     69 *  0.7: Added wbcSidToStringBuf()
     70 *  0.8: Added wbcSidsToUnixIds() and wbcLookupSids()
    6871 **/
    6972#define WBCLIENT_MAJOR_VERSION 0
    70 #define WBCLIENT_MINOR_VERSION 5
     73#define WBCLIENT_MINOR_VERSION 8
    7174#define WBCLIENT_VENDOR_VERSION "Samba libwbclient"
    7275struct wbcLibraryDetails {
     
    8285struct wbcInterfaceDetails {
    8386        uint32_t interface_version;
    84         const char *winbind_version;
     87        char *winbind_version;
    8588        char winbind_separator;
    86         const char *netbios_name;
    87         const char *netbios_domain;
    88         const char *dns_domain;
     89        char *netbios_name;
     90        char *netbios_domain;
     91        char *dns_domain;
    8992};
    9093
     
    191194#define WBC_DOMINFO_TRUSTTYPE_IN_FOREST  0x00000002
    192195#define WBC_DOMINFO_TRUSTTYPE_EXTERNAL   0x00000003
    193 
    194196
    195197/**
     
    430432
    431433enum wbcPasswordChangeRejectReason {
    432         WBC_PWD_CHANGE_REJECT_OTHER=0,
    433         WBC_PWD_CHANGE_REJECT_TOO_SHORT=1,
    434         WBC_PWD_CHANGE_REJECT_IN_HISTORY=2,
    435         WBC_PWD_CHANGE_REJECT_COMPLEXITY=5
    436 };
     434        WBC_PWD_CHANGE_NO_ERROR=0,
     435        WBC_PWD_CHANGE_PASSWORD_TOO_SHORT=1,
     436        WBC_PWD_CHANGE_PWD_IN_HISTORY=2,
     437        WBC_PWD_CHANGE_USERNAME_IN_PASSWORD=3,
     438        WBC_PWD_CHANGE_FULLNAME_IN_PASSWORD=4,
     439        WBC_PWD_CHANGE_NOT_COMPLEX=5,
     440        WBC_PWD_CHANGE_MACHINE_NOT_DEFAULT=6,
     441        WBC_PWD_CHANGE_FAILED_BY_FILTER=7,
     442        WBC_PWD_CHANGE_PASSWORD_TOO_LONG=8
     443};
     444
     445/* Note: this defines exist for compatibility reasons with existing code */
     446#define WBC_PWD_CHANGE_REJECT_OTHER      WBC_PWD_CHANGE_NO_ERROR
     447#define WBC_PWD_CHANGE_REJECT_TOO_SHORT  WBC_PWD_CHANGE_PASSWORD_TOO_SHORT
     448#define WBC_PWD_CHANGE_REJECT_IN_HISTORY WBC_PWD_CHANGE_PWD_IN_HISTORY
     449#define WBC_PWD_CHANGE_REJECT_COMPLEXITY WBC_PWD_CHANGE_NOT_COMPLEX
    437450
    438451/**
     
    519532const char* wbcSidTypeString(enum wbcSidType type);
    520533
     534#define WBC_SID_STRING_BUFLEN (15*11+25)
     535
     536/*
     537 * @brief Print a sid into a buffer
     538 *
     539 * @param sid           Binary Security Identifier
     540 * @param buf           Target buffer
     541 * @param buflen        Target buffer length
     542 *
     543 * @return Resulting string length.
     544 */
     545int wbcSidToStringBuf(const struct wbcDomainSid *sid, char *buf, int buflen);
     546
    521547/**
    522548 * @brief Convert a binary SID to a character string
     
    611637                    char **name,
    612638                    enum wbcSidType *name_type);
     639
     640struct wbcTranslatedName {
     641        enum wbcSidType type;
     642        char *name;
     643        int domain_index;
     644};
     645
     646wbcErr wbcLookupSids(const struct wbcDomainSid *sids, int num_sids,
     647                     struct wbcDomainInfo **domains, int *num_domains,
     648                     struct wbcTranslatedName **names);
    613649
    614650/**
     
    758794                        struct wbcDomainSid *sid);
    759795
     796enum wbcIdType {
     797        WBC_ID_TYPE_NOT_SPECIFIED,
     798        WBC_ID_TYPE_UID,
     799        WBC_ID_TYPE_GID
     800};
     801
     802union wbcUnixIdContainer {
     803        uid_t uid;
     804        gid_t gid;
     805};
     806
     807struct wbcUnixId {
     808        enum wbcIdType type;
     809        union wbcUnixIdContainer id;
     810};
     811
     812/**
     813 * @brief Convert a list of sids to unix ids
     814 *
     815 * @param sids        Pointer to an array of SIDs to convert
     816 * @param num_sids    Number of SIDs
     817 * @param ids         Preallocated output array for translated IDs
     818 *
     819 * @return #wbcErr
     820 *
     821 **/
     822wbcErr wbcSidsToUnixIds(const struct wbcDomainSid *sids, uint32_t num_sids,
     823                        struct wbcUnixId *ids);
     824
    760825/**
    761826 * @brief Obtain a new uid from Winbind
     
    783848 *
    784849 * @return #wbcErr
     850 *
     851 * @deprecated      This method is not impemented any more and should
     852 *                  be removed in the next major version change.
    785853 **/
    786854wbcErr wbcSetUidMapping(uid_t uid, const struct wbcDomainSid *sid);
     
    793861 *
    794862 * @return #wbcErr
     863 *
     864 * @deprecated      This method is not impemented any more and should
     865 *                  be removed in the next major version change.
    795866 **/
    796867wbcErr wbcSetGidMapping(gid_t gid, const struct wbcDomainSid *sid);
     
    803874 *
    804875 * @return #wbcErr
     876 *
     877 * @deprecated      This method is not impemented any more and should
     878 *                  be removed in the next major version change.
    805879 **/
    806880wbcErr wbcRemoveUidMapping(uid_t uid, const struct wbcDomainSid *sid);
     
    813887 *
    814888 * @return #wbcErr
     889 *
     890 * @deprecated      This method is not impemented any more and should
     891 *                  be removed in the next major version change.
    815892 **/
    816893wbcErr wbcRemoveGidMapping(gid_t gid, const struct wbcDomainSid *sid);
     
    822899 *
    823900 * @return #wbcErr
     901 *
     902 * @deprecated      This method is not impemented any more and should
     903 *                  be removed in the next major version change.
    824904 **/
    825905wbcErr wbcSetUidHwm(uid_t uid_hwm);
     
    831911 *
    832912 * @return #wbcErr
     913 *
     914 * @deprecated      This method is not impemented any more and should
     915 *                  be removed in the next major version change.
    833916 **/
    834917wbcErr wbcSetGidHwm(gid_t gid_hwm);
     
    9711054 * @brief Lookup the current status of a trusted domain
    9721055 *
    973  * @param domain      Domain to query
    974  * @param *info       Pointer to returned domain_info struct
     1056 * @param domain        The domain to query
     1057 *
     1058 * @param dinfo          A pointer to store the returned domain_info struct.
    9751059 *
    9761060 * @return #wbcErr
    9771061 **/
    9781062wbcErr wbcDomainInfo(const char *domain,
    979                      struct wbcDomainInfo **info);
     1063                     struct wbcDomainInfo **dinfo);
     1064
     1065/**
     1066 * @brief Lookup the currently contacted DCs
     1067 *
     1068 * @param domain        The domain to query
     1069 *
     1070 * @param num_dcs       Number of DCs currently known
     1071 * @param dc_names      Names of the currently known DCs
     1072 * @param dc_ips        IP addresses of the currently known DCs
     1073 *
     1074 * @return #wbcErr
     1075 **/
     1076wbcErr wbcDcInfo(const char *domain, size_t *num_dcs,
     1077                 const char ***dc_names, const char ***dc_ips);
    9801078
    9811079/**
Note: See TracChangeset for help on using the changeset viewer.