]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
Use pidl for _svcctl_UnlockServiceDatabase().
authorGünther Deschner <gd@samba.org>
Tue, 19 Feb 2008 01:50:01 +0000 (02:50 +0100)
committerGünther Deschner <gd@samba.org>
Tue, 19 Feb 2008 02:13:50 +0000 (03:13 +0100)
Guenther

source/rpc_server/srv_svcctl.c
source/rpc_server/srv_svcctl_nt.c

index 4689e38dea68484c64736ae336de944581c078c9..565c93fa7717ab8f17fe9c1a71331f586751b44b 100644 (file)
@@ -228,23 +228,7 @@ static bool api_svcctl_lock_service_db(pipes_struct *p)
 
 static bool api_svcctl_unlock_service_db(pipes_struct *p)
 {
-       SVCCTL_Q_UNLOCK_SERVICE_DB q_u;
-       SVCCTL_R_UNLOCK_SERVICE_DB r_u;
-       prs_struct *data = &p->in_data.data;
-       prs_struct *rdata = &p->out_data.rdata;
-
-       ZERO_STRUCT(q_u);
-       ZERO_STRUCT(r_u);
-
-       if(!svcctl_io_q_unlock_service_db("", &q_u, data, 0))
-               return False;
-
-       r_u.status = _svcctl_unlock_service_db(p, &q_u, &r_u);
-
-       if(!svcctl_io_r_unlock_service_db("", &r_u, rdata, 0))
-               return False;
-
-       return True;
+       return proxy_svcctl_call(p, NDR_SVCCTL_UNLOCKSERVICEDATABASE);
 }
 
 /*******************************************************************
index 96eafe42156cd25d515476edb924556681997ae9..53154ef0c9f8947db018fdde49956aeaf4b7b8f6 100644 (file)
@@ -786,17 +786,19 @@ WERROR _svcctl_LockServiceDatabase(pipes_struct *p,
 }
 
 /********************************************************************
+ _svcctl_UnlockServiceDatabase
 ********************************************************************/
 
-WERROR _svcctl_unlock_service_db( pipes_struct *p, SVCCTL_Q_UNLOCK_SERVICE_DB *q_u, SVCCTL_R_UNLOCK_SERVICE_DB *r_u )
+WERROR _svcctl_UnlockServiceDatabase(pipes_struct *p,
+                                    struct svcctl_UnlockServiceDatabase *r)
 {
-       SERVICE_INFO *info = find_service_info_by_hnd( p, &q_u->h_lock );
+       SERVICE_INFO *info = find_service_info_by_hnd( p, r->in.lock );
 
 
        if ( !info || (info->type != SVC_HANDLE_IS_DBLOCK) )
                return WERR_BADFID;
 
-       return close_policy_hnd( p, &q_u->h_lock) ? WERR_OK : WERR_BADFID;
+       return close_policy_hnd( p, r->out.lock) ? WERR_OK : WERR_BADFID;
 }
 
 /********************************************************************
@@ -919,12 +921,6 @@ WERROR _svcctl_SetServiceStatus(pipes_struct *p, struct svcctl_SetServiceStatus
        return WERR_NOT_SUPPORTED;
 }
 
-WERROR _svcctl_UnlockServiceDatabase(pipes_struct *p, struct svcctl_UnlockServiceDatabase *r)
-{
-       p->rng_fault_state = True;
-       return WERR_NOT_SUPPORTED;
-}
-
 WERROR _svcctl_NotifyBootConfigStatus(pipes_struct *p, struct svcctl_NotifyBootConfigStatus *r)
 {
        p->rng_fault_state = True;