LCOV - code coverage report
Current view: top level - source3/rpc_server/ntsvcs - srv_ntsvcs_nt.c (source / functions) Hit Total Coverage
Test: coverage report for master 2b515b7d Lines: 40 259 15.4 %
Date: 2024-02-28 12:06:22 Functions: 5 66 7.6 %

          Line data    Source code
       1             : /*
       2             :  *  Unix SMB/CIFS implementation.
       3             :  *  RPC Pipe client / server routines
       4             :  *
       5             :  *  Copyright (C) Gerald (Jerry) Carter             2005.
       6             :  *  Copyright (C) Guenther Deschner                 2008,2009.
       7             :  *
       8             :  *  This program is free software; you can redistribute it and/or modify
       9             :  *  it under the terms of the GNU General Public License as published by
      10             :  *  the Free Software Foundation; either version 3 of the License, or
      11             :  *  (at your option) any later version.
      12             :  *
      13             :  *  This program is distributed in the hope that it will be useful,
      14             :  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
      15             :  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
      16             :  *  GNU General Public License for more details.
      17             :  *
      18             :  *  You should have received a copy of the GNU General Public License
      19             :  *  along with this program; if not, see <http://www.gnu.org/licenses/>.
      20             :  */
      21             : 
      22             : #include "includes.h"
      23             : #include "ntdomain.h"
      24             : #include "librpc/rpc/dcesrv_core.h"
      25             : #include "librpc/gen_ndr/ndr_ntsvcs.h"
      26             : #include "librpc/gen_ndr/ndr_ntsvcs_scompat.h"
      27             : #include "services/svc_winreg_glue.h"
      28             : #include "../libcli/registry/util_reg.h"
      29             : 
      30             : #undef DBGC_CLASS
      31             : #define DBGC_CLASS DBGC_RPC_SRV
      32             : 
      33             : /********************************************************************
      34             : ********************************************************************/
      35             : 
      36          16 : static char* get_device_path(TALLOC_CTX *mem_ctx, const char *device )
      37             : {
      38          16 :         return talloc_asprintf(mem_ctx, "ROOT\\Legacy_%s\\0000", device);
      39             : }
      40             : 
      41             : /********************************************************************
      42             : ********************************************************************/
      43             : 
      44           4 : WERROR _PNP_GetVersion(struct pipes_struct *p,
      45             :                        struct PNP_GetVersion *r)
      46             : {
      47           4 :         *r->out.version = 0x0400;      /* no idea what this means */
      48             : 
      49           4 :         return WERR_OK;
      50             : }
      51             : 
      52             : /********************************************************************
      53             : ********************************************************************/
      54             : 
      55          12 : WERROR _PNP_GetDeviceListSize(struct pipes_struct *p,
      56             :                               struct PNP_GetDeviceListSize *r)
      57             : {
      58           0 :         char *devicepath;
      59             : 
      60          12 :         if ((r->in.flags & CM_GETIDLIST_FILTER_SERVICE) &&
      61          12 :             (!r->in.devicename)) {
      62           4 :                 return WERR_CM_INVALID_POINTER;
      63             :         }
      64             : 
      65           8 :         if (!(devicepath = get_device_path(p->mem_ctx, r->in.devicename))) {
      66           0 :                 return WERR_NOT_ENOUGH_MEMORY;
      67             :         }
      68             : 
      69           8 :         *r->out.size = strlen(devicepath) + 2;
      70             : 
      71           8 :         TALLOC_FREE(devicepath);
      72             : 
      73           8 :         return WERR_OK;
      74             : }
      75             : 
      76             : /****************************************************************
      77             :  _PNP_GetDeviceList
      78             : ****************************************************************/
      79             : 
      80          12 : WERROR _PNP_GetDeviceList(struct pipes_struct *p,
      81             :                           struct PNP_GetDeviceList *r)
      82             : {
      83           0 :         char *devicepath;
      84          12 :         uint32_t size = 0;
      85          12 :         const char **multi_sz = NULL;
      86           0 :         DATA_BLOB blob;
      87             : 
      88          12 :         if ((r->in.flags & CM_GETIDLIST_FILTER_SERVICE) &&
      89          12 :             (!r->in.filter)) {
      90           4 :                 return WERR_CM_INVALID_POINTER;
      91             :         }
      92             : 
      93           8 :         if (!(devicepath = get_device_path(p->mem_ctx, r->in.filter))) {
      94           0 :                 return WERR_NOT_ENOUGH_MEMORY;
      95             :         }
      96             : 
      97           8 :         size = strlen(devicepath) + 2;
      98             : 
      99           8 :         if (*r->in.length < size) {
     100           4 :                 return WERR_CM_BUFFER_SMALL;
     101             :         }
     102             : 
     103           4 :         multi_sz = talloc_zero_array(p->mem_ctx, const char *, 2);
     104           4 :         if (!multi_sz) {
     105           0 :                 return WERR_NOT_ENOUGH_MEMORY;
     106             :         }
     107             : 
     108           4 :         multi_sz[0] = devicepath;
     109             : 
     110           4 :         if (!push_reg_multi_sz(multi_sz, &blob, multi_sz)) {
     111           0 :                 return WERR_NOT_ENOUGH_MEMORY;
     112             :         }
     113             : 
     114           4 :         if (*r->in.length < blob.length/2) {
     115           0 :                 return WERR_CM_BUFFER_SMALL;
     116             :         }
     117             : 
     118           4 :         memcpy(r->out.buffer, blob.data, blob.length);
     119             : 
     120           4 :         return WERR_OK;
     121             : }
     122             : 
     123             : /********************************************************************
     124             : _PNP_GetDeviceRegProp
     125             : ********************************************************************/
     126             : 
     127           4 : WERROR _PNP_GetDeviceRegProp(struct pipes_struct *p,
     128             :                              struct PNP_GetDeviceRegProp *r)
     129             : {
     130           4 :         struct dcesrv_call_state *dce_call = p->dce_call;
     131           0 :         struct auth_session_info *session_info =
     132           4 :                 dcesrv_call_session_info(dce_call);
     133           0 :         char *ptr;
     134           0 :         const char *result;
     135           0 :         DATA_BLOB blob;
     136           4 :         TALLOC_CTX *mem_ctx = NULL;
     137             : 
     138           4 :         switch( r->in.property ) {
     139           4 :         case DEV_REGPROP_DESC:
     140             : 
     141             :                 /* just parse the service name from the device path and then
     142             :                    lookup the display name */
     143           4 :                 if ( !(ptr = strrchr_m( r->in.devicepath, '\\' )) )
     144           0 :                         return WERR_GEN_FAILURE;
     145           4 :                 *ptr = '\0';
     146             : 
     147           4 :                 if ( !(ptr = strrchr_m( r->in.devicepath, '_' )) )
     148           4 :                         return WERR_GEN_FAILURE;
     149           0 :                 ptr++;
     150             : 
     151           0 :                 mem_ctx = talloc_stackframe();
     152             : 
     153           0 :                 result = svcctl_lookup_dispname(mem_ctx,
     154             :                                                 p->msg_ctx,
     155             :                                                 session_info,
     156             :                                                 ptr);
     157           0 :                 if (result == NULL) {
     158           0 :                         return WERR_GEN_FAILURE;
     159             :                 }
     160             : 
     161           0 :                 if (!push_reg_sz(mem_ctx, &blob, result)) {
     162           0 :                         talloc_free(mem_ctx);
     163           0 :                         return WERR_GEN_FAILURE;
     164             :                 }
     165             : 
     166           0 :                 if (*r->in.buffer_size < blob.length) {
     167           0 :                         *r->out.needed = blob.length;
     168           0 :                         *r->out.buffer_size = 0;
     169           0 :                         talloc_free(mem_ctx);
     170           0 :                         return WERR_CM_BUFFER_SMALL;
     171             :                 }
     172             : 
     173           0 :                 r->out.buffer = (uint8_t *)talloc_memdup(p->mem_ctx, blob.data, blob.length);
     174           0 :                 talloc_free(mem_ctx);
     175           0 :                 if (!r->out.buffer) {
     176           0 :                         return WERR_NOT_ENOUGH_MEMORY;
     177             :                 }
     178             : 
     179           0 :                 *r->out.reg_data_type = REG_SZ;      /* always 1...tested using a remove device manager connection */
     180           0 :                 *r->out.buffer_size = blob.length;
     181           0 :                 *r->out.needed = blob.length;
     182             : 
     183           0 :                 break;
     184             : 
     185           0 :         default:
     186           0 :                 *r->out.reg_data_type = 0x00437c98; /* ??? */
     187           0 :                 return WERR_CM_NO_SUCH_VALUE;
     188             :         }
     189             : 
     190           0 :         return WERR_OK;
     191             : }
     192             : 
     193             : /********************************************************************
     194             : ********************************************************************/
     195             : 
     196           0 : WERROR _PNP_ValidateDeviceInstance(struct pipes_struct *p,
     197             :                                    struct PNP_ValidateDeviceInstance *r)
     198             : {
     199             :         /* whatever dude */
     200           0 :         return WERR_OK;
     201             : }
     202             : 
     203             : /********************************************************************
     204             : ********************************************************************/
     205             : 
     206           0 : WERROR _PNP_GetHwProfInfo(struct pipes_struct *p,
     207             :                           struct PNP_GetHwProfInfo *r)
     208             : {
     209             :         /* steal the incoming buffer */
     210             : 
     211           0 :         r->out.info = r->in.info;
     212             : 
     213             :         /* Take the 5th Ammentment */
     214             : 
     215           0 :         return WERR_CM_NO_MORE_HW_PROFILES;
     216             : }
     217             : 
     218             : /********************************************************************
     219             : ********************************************************************/
     220             : 
     221           0 : WERROR _PNP_HwProfFlags(struct pipes_struct *p,
     222             :                         struct PNP_HwProfFlags *r)
     223             : {
     224             :         /* just nod your head */
     225             : 
     226           0 :         return WERR_OK;
     227             : }
     228             : 
     229             : /****************************************************************
     230             : ****************************************************************/
     231             : 
     232           0 : WERROR _PNP_Disconnect(struct pipes_struct *p,
     233             :                        struct PNP_Disconnect *r)
     234             : {
     235           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     236           0 :         return WERR_NOT_SUPPORTED;
     237             : }
     238             : 
     239             : /****************************************************************
     240             : ****************************************************************/
     241             : 
     242           0 : WERROR _PNP_Connect(struct pipes_struct *p,
     243             :                     struct PNP_Connect *r)
     244             : {
     245           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     246           0 :         return WERR_NOT_SUPPORTED;
     247             : }
     248             : 
     249             : /****************************************************************
     250             : ****************************************************************/
     251             : 
     252           0 : WERROR _PNP_GetGlobalState(struct pipes_struct *p,
     253             :                            struct PNP_GetGlobalState *r)
     254             : {
     255           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     256           0 :         return WERR_NOT_SUPPORTED;
     257             : }
     258             : 
     259             : /****************************************************************
     260             : ****************************************************************/
     261             : 
     262           0 : WERROR _PNP_InitDetection(struct pipes_struct *p,
     263             :                           struct PNP_InitDetection *r)
     264             : {
     265           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     266           0 :         return WERR_NOT_SUPPORTED;
     267             : }
     268             : 
     269             : /****************************************************************
     270             : ****************************************************************/
     271             : 
     272           0 : WERROR _PNP_ReportLogOn(struct pipes_struct *p,
     273             :                         struct PNP_ReportLogOn *r)
     274             : {
     275           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     276           0 :         return WERR_NOT_SUPPORTED;
     277             : }
     278             : 
     279             : /****************************************************************
     280             : ****************************************************************/
     281             : 
     282           0 : WERROR _PNP_GetRootDeviceInstance(struct pipes_struct *p,
     283             :                                   struct PNP_GetRootDeviceInstance *r)
     284             : {
     285           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     286           0 :         return WERR_NOT_SUPPORTED;
     287             : }
     288             : 
     289             : /****************************************************************
     290             : ****************************************************************/
     291             : 
     292           0 : WERROR _PNP_GetRelatedDeviceInstance(struct pipes_struct *p,
     293             :                                      struct PNP_GetRelatedDeviceInstance *r)
     294             : {
     295           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     296           0 :         return WERR_NOT_SUPPORTED;
     297             : }
     298             : 
     299             : /****************************************************************
     300             : ****************************************************************/
     301             : 
     302           0 : WERROR _PNP_EnumerateSubKeys(struct pipes_struct *p,
     303             :                              struct PNP_EnumerateSubKeys *r)
     304             : {
     305           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     306           0 :         return WERR_NOT_SUPPORTED;
     307             : }
     308             : 
     309             : /****************************************************************
     310             : ****************************************************************/
     311             : 
     312           0 : WERROR _PNP_GetDepth(struct pipes_struct *p,
     313             :                      struct PNP_GetDepth *r)
     314             : {
     315           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     316           0 :         return WERR_NOT_SUPPORTED;
     317             : }
     318             : 
     319             : /****************************************************************
     320             : ****************************************************************/
     321             : 
     322           0 : WERROR _PNP_SetDeviceRegProp(struct pipes_struct *p,
     323             :                              struct PNP_SetDeviceRegProp *r)
     324             : {
     325           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     326           0 :         return WERR_NOT_SUPPORTED;
     327             : }
     328             : 
     329             : /****************************************************************
     330             : ****************************************************************/
     331             : 
     332           0 : WERROR _PNP_GetClassInstance(struct pipes_struct *p,
     333             :                              struct PNP_GetClassInstance *r)
     334             : {
     335           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     336           0 :         return WERR_NOT_SUPPORTED;
     337             : }
     338             : 
     339             : /****************************************************************
     340             : ****************************************************************/
     341             : 
     342           0 : WERROR _PNP_CreateKey(struct pipes_struct *p,
     343             :                       struct PNP_CreateKey *r)
     344             : {
     345           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     346           0 :         return WERR_NOT_SUPPORTED;
     347             : }
     348             : 
     349             : /****************************************************************
     350             : ****************************************************************/
     351             : 
     352           0 : WERROR _PNP_DeleteRegistryKey(struct pipes_struct *p,
     353             :                               struct PNP_DeleteRegistryKey *r)
     354             : {
     355           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     356           0 :         return WERR_NOT_SUPPORTED;
     357             : }
     358             : 
     359             : /****************************************************************
     360             : ****************************************************************/
     361             : 
     362           0 : WERROR _PNP_GetClassCount(struct pipes_struct *p,
     363             :                           struct PNP_GetClassCount *r)
     364             : {
     365           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     366           0 :         return WERR_NOT_SUPPORTED;
     367             : }
     368             : 
     369             : /****************************************************************
     370             : ****************************************************************/
     371             : 
     372           0 : WERROR _PNP_GetClassName(struct pipes_struct *p,
     373             :                          struct PNP_GetClassName *r)
     374             : {
     375           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     376           0 :         return WERR_NOT_SUPPORTED;
     377             : }
     378             : 
     379             : /****************************************************************
     380             : ****************************************************************/
     381             : 
     382           0 : WERROR _PNP_DeleteClassKey(struct pipes_struct *p,
     383             :                            struct PNP_DeleteClassKey *r)
     384             : {
     385           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     386           0 :         return WERR_NOT_SUPPORTED;
     387             : }
     388             : 
     389             : /****************************************************************
     390             : ****************************************************************/
     391             : 
     392           0 : WERROR _PNP_GetInterfaceDeviceAlias(struct pipes_struct *p,
     393             :                                     struct PNP_GetInterfaceDeviceAlias *r)
     394             : {
     395           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     396           0 :         return WERR_NOT_SUPPORTED;
     397             : }
     398             : 
     399             : /****************************************************************
     400             : ****************************************************************/
     401             : 
     402           0 : WERROR _PNP_GetInterfaceDeviceList(struct pipes_struct *p,
     403             :                                    struct PNP_GetInterfaceDeviceList *r)
     404             : {
     405           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     406           0 :         return WERR_NOT_SUPPORTED;
     407             : }
     408             : 
     409             : /****************************************************************
     410             : ****************************************************************/
     411             : 
     412           0 : WERROR _PNP_GetInterfaceDeviceListSize(struct pipes_struct *p,
     413             :                                        struct PNP_GetInterfaceDeviceListSize *r)
     414             : {
     415           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     416           0 :         return WERR_NOT_SUPPORTED;
     417             : }
     418             : 
     419             : /****************************************************************
     420             : ****************************************************************/
     421             : 
     422           0 : WERROR _PNP_RegisterDeviceClassAssociation(struct pipes_struct *p,
     423             :                                            struct PNP_RegisterDeviceClassAssociation *r)
     424             : {
     425           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     426           0 :         return WERR_NOT_SUPPORTED;
     427             : }
     428             : 
     429             : /****************************************************************
     430             : ****************************************************************/
     431             : 
     432           0 : WERROR _PNP_UnregisterDeviceClassAssociation(struct pipes_struct *p,
     433             :                                              struct PNP_UnregisterDeviceClassAssociation *r)
     434             : {
     435           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     436           0 :         return WERR_NOT_SUPPORTED;
     437             : }
     438             : 
     439             : /****************************************************************
     440             : ****************************************************************/
     441             : 
     442           0 : WERROR _PNP_GetClassRegProp(struct pipes_struct *p,
     443             :                             struct PNP_GetClassRegProp *r)
     444             : {
     445           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     446           0 :         return WERR_NOT_SUPPORTED;
     447             : }
     448             : 
     449             : /****************************************************************
     450             : ****************************************************************/
     451             : 
     452           0 : WERROR _PNP_SetClassRegProp(struct pipes_struct *p,
     453             :                             struct PNP_SetClassRegProp *r)
     454             : {
     455           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     456           0 :         return WERR_NOT_SUPPORTED;
     457             : }
     458             : 
     459             : /****************************************************************
     460             : ****************************************************************/
     461             : 
     462           0 : WERROR _PNP_CreateDevInst(struct pipes_struct *p,
     463             :                           struct PNP_CreateDevInst *r)
     464             : {
     465           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     466           0 :         return WERR_NOT_SUPPORTED;
     467             : }
     468             : 
     469             : /****************************************************************
     470             : ****************************************************************/
     471             : 
     472           0 : WERROR _PNP_DeviceInstanceAction(struct pipes_struct *p,
     473             :                                  struct PNP_DeviceInstanceAction *r)
     474             : {
     475           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     476           0 :         return WERR_NOT_SUPPORTED;
     477             : }
     478             : 
     479             : /****************************************************************
     480             : ****************************************************************/
     481             : 
     482           0 : WERROR _PNP_GetDeviceStatus(struct pipes_struct *p,
     483             :                             struct PNP_GetDeviceStatus *r)
     484             : {
     485           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     486           0 :         return WERR_NOT_SUPPORTED;
     487             : }
     488             : 
     489             : /****************************************************************
     490             : ****************************************************************/
     491             : 
     492           0 : WERROR _PNP_SetDeviceProblem(struct pipes_struct *p,
     493             :                              struct PNP_SetDeviceProblem *r)
     494             : {
     495           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     496           0 :         return WERR_NOT_SUPPORTED;
     497             : }
     498             : 
     499             : /****************************************************************
     500             : ****************************************************************/
     501             : 
     502           0 : WERROR _PNP_DisableDevInst(struct pipes_struct *p,
     503             :                            struct PNP_DisableDevInst *r)
     504             : {
     505           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     506           0 :         return WERR_NOT_SUPPORTED;
     507             : }
     508             : 
     509             : /****************************************************************
     510             : ****************************************************************/
     511             : 
     512           0 : WERROR _PNP_UninstallDevInst(struct pipes_struct *p,
     513             :                              struct PNP_UninstallDevInst *r)
     514             : {
     515           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     516           0 :         return WERR_NOT_SUPPORTED;
     517             : }
     518             : 
     519             : /****************************************************************
     520             : ****************************************************************/
     521             : 
     522           0 : WERROR _PNP_AddID(struct pipes_struct *p,
     523             :                   struct PNP_AddID *r)
     524             : {
     525           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     526           0 :         return WERR_NOT_SUPPORTED;
     527             : }
     528             : 
     529             : /****************************************************************
     530             : ****************************************************************/
     531             : 
     532           0 : WERROR _PNP_RegisterDriver(struct pipes_struct *p,
     533             :                            struct PNP_RegisterDriver *r)
     534             : {
     535           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     536           0 :         return WERR_NOT_SUPPORTED;
     537             : }
     538             : 
     539             : /****************************************************************
     540             : ****************************************************************/
     541             : 
     542           0 : WERROR _PNP_QueryRemove(struct pipes_struct *p,
     543             :                         struct PNP_QueryRemove *r)
     544             : {
     545           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     546           0 :         return WERR_NOT_SUPPORTED;
     547             : }
     548             : 
     549             : /****************************************************************
     550             : ****************************************************************/
     551             : 
     552           0 : WERROR _PNP_RequestDeviceEject(struct pipes_struct *p,
     553             :                                struct PNP_RequestDeviceEject *r)
     554             : {
     555           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     556           0 :         return WERR_NOT_SUPPORTED;
     557             : }
     558             : 
     559             : /****************************************************************
     560             : ****************************************************************/
     561             : 
     562           0 : WERROR _PNP_IsDockStationPresent(struct pipes_struct *p,
     563             :                                  struct PNP_IsDockStationPresent *r)
     564             : {
     565           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     566           0 :         return WERR_NOT_SUPPORTED;
     567             : }
     568             : 
     569             : /****************************************************************
     570             : ****************************************************************/
     571             : 
     572           0 : WERROR _PNP_RequestEjectPC(struct pipes_struct *p,
     573             :                            struct PNP_RequestEjectPC *r)
     574             : {
     575           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     576           0 :         return WERR_NOT_SUPPORTED;
     577             : }
     578             : 
     579             : /****************************************************************
     580             : ****************************************************************/
     581             : 
     582           0 : WERROR _PNP_AddEmptyLogConf(struct pipes_struct *p,
     583             :                             struct PNP_AddEmptyLogConf *r)
     584             : {
     585           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     586           0 :         return WERR_NOT_SUPPORTED;
     587             : }
     588             : 
     589             : /****************************************************************
     590             : ****************************************************************/
     591             : 
     592           0 : WERROR _PNP_FreeLogConf(struct pipes_struct *p,
     593             :                         struct PNP_FreeLogConf *r)
     594             : {
     595           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     596           0 :         return WERR_NOT_SUPPORTED;
     597             : }
     598             : 
     599             : /****************************************************************
     600             : ****************************************************************/
     601             : 
     602           0 : WERROR _PNP_GetFirstLogConf(struct pipes_struct *p,
     603             :                             struct PNP_GetFirstLogConf *r)
     604             : {
     605           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     606           0 :         return WERR_NOT_SUPPORTED;
     607             : }
     608             : 
     609             : /****************************************************************
     610             : ****************************************************************/
     611             : 
     612           0 : WERROR _PNP_GetNextLogConf(struct pipes_struct *p,
     613             :                            struct PNP_GetNextLogConf *r)
     614             : {
     615           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     616           0 :         return WERR_NOT_SUPPORTED;
     617             : }
     618             : 
     619             : /****************************************************************
     620             : ****************************************************************/
     621             : 
     622           0 : WERROR _PNP_GetLogConfPriority(struct pipes_struct *p,
     623             :                                struct PNP_GetLogConfPriority *r)
     624             : {
     625           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     626           0 :         return WERR_NOT_SUPPORTED;
     627             : }
     628             : 
     629             : /****************************************************************
     630             : ****************************************************************/
     631             : 
     632           0 : WERROR _PNP_AddResDes(struct pipes_struct *p,
     633             :                       struct PNP_AddResDes *r)
     634             : {
     635           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     636           0 :         return WERR_NOT_SUPPORTED;
     637             : }
     638             : 
     639             : /****************************************************************
     640             : ****************************************************************/
     641             : 
     642           0 : WERROR _PNP_FreeResDes(struct pipes_struct *p,
     643             :                        struct PNP_FreeResDes *r)
     644             : {
     645           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     646           0 :         return WERR_NOT_SUPPORTED;
     647             : }
     648             : 
     649             : /****************************************************************
     650             : ****************************************************************/
     651             : 
     652           0 : WERROR _PNP_GetNextResDes(struct pipes_struct *p,
     653             :                           struct PNP_GetNextResDes *r)
     654             : {
     655           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     656           0 :         return WERR_NOT_SUPPORTED;
     657             : }
     658             : 
     659             : /****************************************************************
     660             : ****************************************************************/
     661             : 
     662           0 : WERROR _PNP_GetResDesData(struct pipes_struct *p,
     663             :                           struct PNP_GetResDesData *r)
     664             : {
     665           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     666           0 :         return WERR_NOT_SUPPORTED;
     667             : }
     668             : 
     669             : /****************************************************************
     670             : ****************************************************************/
     671             : 
     672           0 : WERROR _PNP_GetResDesDataSize(struct pipes_struct *p,
     673             :                               struct PNP_GetResDesDataSize *r)
     674             : {
     675           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     676           0 :         return WERR_NOT_SUPPORTED;
     677             : }
     678             : 
     679             : /****************************************************************
     680             : ****************************************************************/
     681             : 
     682           0 : WERROR _PNP_ModifyResDes(struct pipes_struct *p,
     683             :                          struct PNP_ModifyResDes *r)
     684             : {
     685           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     686           0 :         return WERR_NOT_SUPPORTED;
     687             : }
     688             : 
     689             : /****************************************************************
     690             : ****************************************************************/
     691             : 
     692           0 : WERROR _PNP_DetectResourceLimit(struct pipes_struct *p,
     693             :                                 struct PNP_DetectResourceLimit *r)
     694             : {
     695           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     696           0 :         return WERR_NOT_SUPPORTED;
     697             : }
     698             : 
     699             : /****************************************************************
     700             : ****************************************************************/
     701             : 
     702           0 : WERROR _PNP_QueryResConfList(struct pipes_struct *p,
     703             :                              struct PNP_QueryResConfList *r)
     704             : {
     705           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     706           0 :         return WERR_NOT_SUPPORTED;
     707             : }
     708             : 
     709             : /****************************************************************
     710             : ****************************************************************/
     711             : 
     712           0 : WERROR _PNP_SetHwProf(struct pipes_struct *p,
     713             :                       struct PNP_SetHwProf *r)
     714             : {
     715           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     716           0 :         return WERR_NOT_SUPPORTED;
     717             : }
     718             : 
     719             : /****************************************************************
     720             : ****************************************************************/
     721             : 
     722           0 : WERROR _PNP_QueryArbitratorFreeData(struct pipes_struct *p,
     723             :                                     struct PNP_QueryArbitratorFreeData *r)
     724             : {
     725           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     726           0 :         return WERR_NOT_SUPPORTED;
     727             : }
     728             : 
     729             : /****************************************************************
     730             : ****************************************************************/
     731             : 
     732           0 : WERROR _PNP_QueryArbitratorFreeSize(struct pipes_struct *p,
     733             :                                     struct PNP_QueryArbitratorFreeSize *r)
     734             : {
     735           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     736           0 :         return WERR_NOT_SUPPORTED;
     737             : }
     738             : 
     739             : /****************************************************************
     740             : ****************************************************************/
     741             : 
     742           0 : WERROR _PNP_RunDetection(struct pipes_struct *p,
     743             :                          struct PNP_RunDetection *r)
     744             : {
     745           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     746           0 :         return WERR_NOT_SUPPORTED;
     747             : }
     748             : 
     749             : /****************************************************************
     750             : ****************************************************************/
     751             : 
     752           0 : WERROR _PNP_RegisterNotification(struct pipes_struct *p,
     753             :                                  struct PNP_RegisterNotification *r)
     754             : {
     755           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     756           0 :         return WERR_NOT_SUPPORTED;
     757             : }
     758             : 
     759             : /****************************************************************
     760             : ****************************************************************/
     761             : 
     762           0 : WERROR _PNP_UnregisterNotification(struct pipes_struct *p,
     763             :                                    struct PNP_UnregisterNotification *r)
     764             : {
     765           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     766           0 :         return WERR_NOT_SUPPORTED;
     767             : }
     768             : 
     769             : /****************************************************************
     770             : ****************************************************************/
     771             : 
     772           0 : WERROR _PNP_GetCustomDevProp(struct pipes_struct *p,
     773             :                              struct PNP_GetCustomDevProp *r)
     774             : {
     775           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     776           0 :         return WERR_NOT_SUPPORTED;
     777             : }
     778             : 
     779             : /****************************************************************
     780             : ****************************************************************/
     781             : 
     782           0 : WERROR _PNP_GetVersionInternal(struct pipes_struct *p,
     783             :                                struct PNP_GetVersionInternal *r)
     784             : {
     785           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     786           0 :         return WERR_NOT_SUPPORTED;
     787             : }
     788             : 
     789             : /****************************************************************
     790             : ****************************************************************/
     791             : 
     792           0 : WERROR _PNP_GetBlockedDriverInfo(struct pipes_struct *p,
     793             :                                  struct PNP_GetBlockedDriverInfo *r)
     794             : {
     795           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     796           0 :         return WERR_NOT_SUPPORTED;
     797             : }
     798             : 
     799             : /****************************************************************
     800             : ****************************************************************/
     801             : 
     802           0 : WERROR _PNP_GetServerSideDeviceInstallFlags(struct pipes_struct *p,
     803             :                                             struct PNP_GetServerSideDeviceInstallFlags *r)
     804             : {
     805           0 :         p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
     806           0 :         return WERR_NOT_SUPPORTED;
     807             : }
     808             : 
     809             : /* include the generated boilerplate */
     810             : #include "librpc/gen_ndr/ndr_ntsvcs_scompat.c"

Generated by: LCOV version 1.14