libwbclient: unimplement wbcSetUidHwm()
[amitay/samba.git] / nsswitch / libwbclient / wbc_idmap.c
index 5b2ab875f62b168fe6ba9195dbe3b53a9661957b..dc9bf3636941fe1ad9b5dc918b8e8e527d1df33f 100644 (file)
@@ -5,7 +5,6 @@
 
    Copyright (C) Gerald (Jerry) Carter 2007
 
-
    This library is free software; you can redistribute it and/or
    modify it under the terms of the GNU Lesser General Public
    License as published by the Free Software Foundation; either
@@ -22,6 +21,7 @@
 
 /* Required Headers */
 
+#include "replace.h"
 #include "libwbclient.h"
 
 /* Convert a Windows SID to a Unix uid, allocating an uid if needed */
@@ -157,6 +157,7 @@ wbcErr wbcSidToGid(const struct wbcDomainSid *sid, gid_t *pgid)
        return wbc_status;
 }
 
+
 /* Convert a Windows SID to a Unix gid if there already is a mapping */
 
 wbcErr wbcQuerySidToGid(const struct wbcDomainSid *sid,
@@ -165,6 +166,7 @@ wbcErr wbcQuerySidToGid(const struct wbcDomainSid *sid,
        return WBC_ERR_NOT_IMPLEMENTED;
 }
 
+
 /* Convert a Unix gid to a Windows SID, allocating a SID if needed */
 wbcErr wbcGidToSid(gid_t gid, struct wbcDomainSid *sid)
 {
@@ -222,8 +224,8 @@ wbcErr wbcAllocateUid(uid_t *puid)
 
        /* Make request */
 
-       wbc_status = wbcRequestResponse(WINBINDD_ALLOCATE_UID,
-                                          &request, &response);
+       wbc_status = wbcRequestResponsePriv(WINBINDD_ALLOCATE_UID,
+                                           &request, &response);
        BAIL_ON_WBC_ERROR(wbc_status);
 
        /* Copy out result */
@@ -252,8 +254,8 @@ wbcErr wbcAllocateGid(gid_t *pgid)
 
        /* Make request */
 
-       wbc_status = wbcRequestResponse(WINBINDD_ALLOCATE_GID,
-                                          &request, &response);
+       wbc_status = wbcRequestResponsePriv(WINBINDD_ALLOCATE_GID,
+                                           &request, &response);
        BAIL_ON_WBC_ERROR(wbc_status);
 
        /* Copy out result */
@@ -298,8 +300,8 @@ wbcErr wbcSetUidMapping(uid_t uid, const struct wbcDomainSid *sid)
                sizeof(request.data.dual_idmapset.sid)-1);
        wbcFreeMemory(sid_string);
 
-       wbc_status = wbcRequestResponse(WINBINDD_SET_MAPPING,
-                                       &request, &response);
+       wbc_status = wbcRequestResponsePriv(WINBINDD_SET_MAPPING,
+                                           &request, &response);
        BAIL_ON_WBC_ERROR(wbc_status);
 
  done:
@@ -335,8 +337,8 @@ wbcErr wbcSetGidMapping(gid_t gid, const struct wbcDomainSid *sid)
                sizeof(request.data.dual_idmapset.sid)-1);
        wbcFreeMemory(sid_string);
 
-       wbc_status = wbcRequestResponse(WINBINDD_SET_MAPPING,
-                                       &request, &response);
+       wbc_status = wbcRequestResponsePriv(WINBINDD_SET_MAPPING,
+                                           &request, &response);
        BAIL_ON_WBC_ERROR(wbc_status);
 
  done:
@@ -372,8 +374,8 @@ wbcErr wbcRemoveUidMapping(uid_t uid, const struct wbcDomainSid *sid)
                sizeof(request.data.dual_idmapset.sid)-1);
        wbcFreeMemory(sid_string);
 
-       wbc_status = wbcRequestResponse(WINBINDD_REMOVE_MAPPING,
-                                       &request, &response);
+       wbc_status = wbcRequestResponsePriv(WINBINDD_REMOVE_MAPPING,
+                                           &request, &response);
        BAIL_ON_WBC_ERROR(wbc_status);
 
  done:
@@ -409,37 +411,18 @@ wbcErr wbcRemoveGidMapping(gid_t gid, const struct wbcDomainSid *sid)
                sizeof(request.data.dual_idmapset.sid)-1);
        wbcFreeMemory(sid_string);
 
-       wbc_status = wbcRequestResponse(WINBINDD_REMOVE_MAPPING,
-                                       &request, &response);
+       wbc_status = wbcRequestResponsePriv(WINBINDD_REMOVE_MAPPING,
+                                           &request, &response);
        BAIL_ON_WBC_ERROR(wbc_status);
 
  done:
        return wbc_status;
 }
 
-/* Set the highwater mark for allocated uids. */
+/* Set the highwater mark for allocated uids - not implemented any more */
 wbcErr wbcSetUidHwm(uid_t uid_hwm)
 {
-       struct winbindd_request request;
-       struct winbindd_response response;
-       wbcErr wbc_status = WBC_ERR_UNKNOWN_FAILURE;
-
-       /* Initialise request */
-
-       ZERO_STRUCT(request);
-       ZERO_STRUCT(response);
-
-       /* Make request */
-
-       request.data.dual_idmapset.id = uid_hwm;
-       request.data.dual_idmapset.type = _ID_TYPE_UID;
-
-       wbc_status = wbcRequestResponse(WINBINDD_SET_HWM,
-                                       &request, &response);
-       BAIL_ON_WBC_ERROR(wbc_status);
-
- done:
-       return wbc_status;
+       return WBC_ERR_NOT_IMPLEMENTED;
 }
 
 /* Set the highwater mark for allocated gids. */
@@ -459,8 +442,8 @@ wbcErr wbcSetGidHwm(gid_t gid_hwm)
        request.data.dual_idmapset.id = gid_hwm;
        request.data.dual_idmapset.type = _ID_TYPE_GID;
 
-       wbc_status = wbcRequestResponse(WINBINDD_SET_HWM,
-                                       &request, &response);
+       wbc_status = wbcRequestResponsePriv(WINBINDD_SET_HWM,
+                                           &request, &response);
        BAIL_ON_WBC_ERROR(wbc_status);
 
  done: