rpc_server/srv_spoolss.c

ソースコードを見る。

関数

static BOOL api_spoolss_open_printer (pipes_struct *p)
static BOOL api_spoolss_open_printer_ex (pipes_struct *p)
static BOOL api_spoolss_getprinterdata (pipes_struct *p)
static BOOL api_spoolss_deleteprinterdata (pipes_struct *p)
static BOOL api_spoolss_closeprinter (pipes_struct *p)
static BOOL api_spoolss_abortprinter (pipes_struct *p)
static BOOL api_spoolss_deleteprinter (pipes_struct *p)
static BOOL api_spoolss_deleteprinterdriver (pipes_struct *p)
static BOOL api_spoolss_rffpcnex (pipes_struct *p)
static BOOL api_spoolss_rfnpcnex (pipes_struct *p)
static BOOL api_spoolss_enumprinters (pipes_struct *p)
static BOOL api_spoolss_getprinter (pipes_struct *p)
static BOOL api_spoolss_getprinterdriver2 (pipes_struct *p)
static BOOL api_spoolss_startpageprinter (pipes_struct *p)
static BOOL api_spoolss_endpageprinter (pipes_struct *p)
static BOOL api_spoolss_startdocprinter (pipes_struct *p)
static BOOL api_spoolss_enddocprinter (pipes_struct *p)
static BOOL api_spoolss_writeprinter (pipes_struct *p)
static BOOL api_spoolss_setprinter (pipes_struct *p)
static BOOL api_spoolss_fcpn (pipes_struct *p)
static BOOL api_spoolss_addjob (pipes_struct *p)
static BOOL api_spoolss_enumjobs (pipes_struct *p)
static BOOL api_spoolss_schedulejob (pipes_struct *p)
static BOOL api_spoolss_setjob (pipes_struct *p)
static BOOL api_spoolss_enumprinterdrivers (pipes_struct *p)
static BOOL api_spoolss_getform (pipes_struct *p)
static BOOL api_spoolss_enumforms (pipes_struct *p)
static BOOL api_spoolss_enumports (pipes_struct *p)
static BOOL api_spoolss_addprinterex (pipes_struct *p)
static BOOL api_spoolss_addprinterdriver (pipes_struct *p)
static BOOL api_spoolss_getprinterdriverdirectory (pipes_struct *p)
static BOOL api_spoolss_enumprinterdata (pipes_struct *p)
static BOOL api_spoolss_setprinterdata (pipes_struct *p)
static BOOL api_spoolss_reset_printer (pipes_struct *p)
static BOOL api_spoolss_addform (pipes_struct *p)
static BOOL api_spoolss_deleteform (pipes_struct *p)
static BOOL api_spoolss_setform (pipes_struct *p)
static BOOL api_spoolss_enumprintprocessors (pipes_struct *p)
static BOOL api_spoolss_addprintprocessor (pipes_struct *p)
static BOOL api_spoolss_enumprintprocdatatypes (pipes_struct *p)
static BOOL api_spoolss_enumprintmonitors (pipes_struct *p)
static BOOL api_spoolss_getjob (pipes_struct *p)
static BOOL api_spoolss_getprinterdataex (pipes_struct *p)
static BOOL api_spoolss_setprinterdataex (pipes_struct *p)
static BOOL api_spoolss_enumprinterkey (pipes_struct *p)
static BOOL api_spoolss_enumprinterdataex (pipes_struct *p)
static BOOL api_spoolss_getprintprocessordirectory (pipes_struct *p)
static BOOL api_spoolss_deleteprinterdataex (pipes_struct *p)
static BOOL api_spoolss_deleteprinterkey (pipes_struct *p)
static BOOL api_spoolss_addprinterdriverex (pipes_struct *p)
static BOOL api_spoolss_deleteprinterdriverex (pipes_struct *p)
static BOOL api_spoolss_xcvdataport (pipes_struct *p)
void spoolss_get_pipe_fns (struct api_struct **fns, int *n_fns)
NTSTATUS rpc_spoolss_init (void)

変数

api_struct api_spoolss_cmds []


関数

static BOOL api_spoolss_open_printer ( pipes_struct p  )  [static]

srv_spoolss.c35 行で定義されています。

参照先 _spoolss_open_printer()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_open_printer()spoolss_io_r_open_printer()SPOOL_R_OPEN_PRINTER::status.

00036 {
00037         SPOOL_Q_OPEN_PRINTER q_u;
00038         SPOOL_R_OPEN_PRINTER r_u;
00039         prs_struct *data = &p->in_data.data;
00040         prs_struct *rdata = &p->out_data.rdata;
00041 
00042         ZERO_STRUCT(q_u);
00043         ZERO_STRUCT(r_u);
00044 
00045         if (!spoolss_io_q_open_printer("", &q_u, data, 0)) {
00046                 DEBUG(0,("spoolss_io_q_open_printer: unable to unmarshall SPOOL_Q_OPEN_PRINTER.\n"));
00047                 return False;
00048         }
00049 
00050         r_u.status = _spoolss_open_printer( p, &q_u, &r_u);
00051         
00052         if (!spoolss_io_r_open_printer("",&r_u,rdata,0)){
00053                 DEBUG(0,("spoolss_io_r_open_printer: unable to marshall SPOOL_R_OPEN_PRINTER.\n"));
00054                 return False;
00055         }
00056 
00057         return True;
00058 }

static BOOL api_spoolss_open_printer_ex ( pipes_struct p  )  [static]

srv_spoolss.c65 行で定義されています。

参照先 _spoolss_open_printer_ex()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_open_printer_ex()spoolss_io_r_open_printer_ex()SPOOL_R_OPEN_PRINTER_EX::status.

00066 {
00067         SPOOL_Q_OPEN_PRINTER_EX q_u;
00068         SPOOL_R_OPEN_PRINTER_EX r_u;
00069         prs_struct *data = &p->in_data.data;
00070         prs_struct *rdata = &p->out_data.rdata;
00071 
00072         ZERO_STRUCT(q_u);
00073         ZERO_STRUCT(r_u);
00074 
00075         if (!spoolss_io_q_open_printer_ex("", &q_u, data, 0)) {
00076                 DEBUG(0,("spoolss_io_q_open_printer_ex: unable to unmarshall SPOOL_Q_OPEN_PRINTER_EX.\n"));
00077                 return False;
00078         }
00079 
00080         r_u.status = _spoolss_open_printer_ex( p, &q_u, &r_u);
00081 
00082         if (!spoolss_io_r_open_printer_ex("",&r_u,rdata,0)){
00083                 DEBUG(0,("spoolss_io_r_open_printer_ex: unable to marshall SPOOL_R_OPEN_PRINTER_EX.\n"));
00084                 return False;
00085         }
00086 
00087         return True;
00088 }

static BOOL api_spoolss_getprinterdata ( pipes_struct p  )  [static]

srv_spoolss.c96 行で定義されています。

参照先 _spoolss_getprinterdata()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_getprinterdata()spoolss_io_r_getprinterdata()spool_r_getprinterdata::status.

00097 {
00098         SPOOL_Q_GETPRINTERDATA q_u;
00099         SPOOL_R_GETPRINTERDATA r_u;
00100         prs_struct *data = &p->in_data.data;
00101         prs_struct *rdata = &p->out_data.rdata;
00102 
00103         ZERO_STRUCT(q_u);
00104         ZERO_STRUCT(r_u);
00105 
00106         /* read the stream and fill the struct */
00107         if (!spoolss_io_q_getprinterdata("", &q_u, data, 0)) {
00108                 DEBUG(0,("spoolss_io_q_getprinterdata: unable to unmarshall SPOOL_Q_GETPRINTERDATA.\n"));
00109                 return False;
00110         }
00111         
00112         r_u.status = _spoolss_getprinterdata( p, &q_u, &r_u);
00113 
00114         if (!spoolss_io_r_getprinterdata("", &r_u, rdata, 0)) {
00115                 DEBUG(0,("spoolss_io_r_getprinterdata: unable to marshall SPOOL_R_GETPRINTERDATA.\n"));
00116                 return False;
00117         }
00118 
00119         return True;
00120 }

static BOOL api_spoolss_deleteprinterdata ( pipes_struct p  )  [static]

srv_spoolss.c128 行で定義されています。

参照先 _spoolss_deleteprinterdata()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_deleteprinterdata()spoolss_io_r_deleteprinterdata()spool_r_deleteprinterdata::status.

00129 {
00130         SPOOL_Q_DELETEPRINTERDATA q_u;
00131         SPOOL_R_DELETEPRINTERDATA r_u;
00132         prs_struct *data = &p->in_data.data;
00133         prs_struct *rdata = &p->out_data.rdata;
00134 
00135         ZERO_STRUCT(q_u);
00136         ZERO_STRUCT(r_u);
00137 
00138         /* read the stream and fill the struct */
00139         if (!spoolss_io_q_deleteprinterdata("", &q_u, data, 0)) {
00140                 DEBUG(0,("spoolss_io_q_deleteprinterdata: unable to unmarshall SPOOL_Q_DELETEPRINTERDATA.\n"));
00141                 return False;
00142         }
00143         
00144         r_u.status = _spoolss_deleteprinterdata( p, &q_u, &r_u );
00145 
00146         if (!spoolss_io_r_deleteprinterdata("", &r_u, rdata, 0)) {
00147                 DEBUG(0,("spoolss_io_r_deleteprinterdata: unable to marshall SPOOL_R_DELETEPRINTERDATA.\n"));
00148                 return False;
00149         }
00150 
00151         return True;
00152 }

static BOOL api_spoolss_closeprinter ( pipes_struct p  )  [static]

srv_spoolss.c160 行で定義されています。

参照先 _spoolss_closeprinter()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_closeprinter()spoolss_io_r_closeprinter()spool_r_closeprinter::status.

00161 {
00162         SPOOL_Q_CLOSEPRINTER q_u;
00163         SPOOL_R_CLOSEPRINTER r_u;
00164         prs_struct *data = &p->in_data.data;
00165         prs_struct *rdata = &p->out_data.rdata;
00166 
00167         ZERO_STRUCT(q_u);
00168         ZERO_STRUCT(r_u);
00169 
00170         if (!spoolss_io_q_closeprinter("", &q_u, data, 0)) {
00171                 DEBUG(0,("spoolss_io_q_closeprinter: unable to unmarshall SPOOL_Q_CLOSEPRINTER.\n"));
00172                 return False;
00173         }
00174 
00175         r_u.status = _spoolss_closeprinter(p, &q_u, &r_u);
00176 
00177         if (!spoolss_io_r_closeprinter("",&r_u,rdata,0)) {
00178                 DEBUG(0,("spoolss_io_r_closeprinter: unable to marshall SPOOL_R_CLOSEPRINTER.\n"));
00179                 return False;
00180         }
00181 
00182         return True;
00183 }

static BOOL api_spoolss_abortprinter ( pipes_struct p  )  [static]

srv_spoolss.c191 行で定義されています。

参照先 _spoolss_abortprinter()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_abortprinter()spoolss_io_r_abortprinter()SPOOL_R_ABORTPRINTER::status.

00192 {
00193         SPOOL_Q_ABORTPRINTER q_u;
00194         SPOOL_R_ABORTPRINTER r_u;
00195         prs_struct *data = &p->in_data.data;
00196         prs_struct *rdata = &p->out_data.rdata;
00197 
00198         ZERO_STRUCT(q_u);
00199         ZERO_STRUCT(r_u);
00200 
00201         if (!spoolss_io_q_abortprinter("", &q_u, data, 0)) {
00202                 DEBUG(0,("spoolss_io_q_abortprinter: unable to unmarshall SPOOL_Q_ABORTPRINTER.\n"));
00203                 return False;
00204         }
00205 
00206         r_u.status = _spoolss_abortprinter(p, &q_u, &r_u);
00207 
00208         if (!spoolss_io_r_abortprinter("",&r_u,rdata,0)) {
00209                 DEBUG(0,("spoolss_io_r_abortprinter: unable to marshall SPOOL_R_ABORTPRINTER.\n"));
00210                 return False;
00211         }
00212 
00213         return True;
00214 }

static BOOL api_spoolss_deleteprinter ( pipes_struct p  )  [static]

srv_spoolss.c222 行で定義されています。

参照先 _spoolss_deleteprinter()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_deleteprinter()spoolss_io_r_deleteprinter()SPOOL_R_DELETEPRINTER::status.

00223 {
00224         SPOOL_Q_DELETEPRINTER q_u;
00225         SPOOL_R_DELETEPRINTER r_u;
00226         prs_struct *data = &p->in_data.data;
00227         prs_struct *rdata = &p->out_data.rdata;
00228 
00229         ZERO_STRUCT(q_u);
00230         ZERO_STRUCT(r_u);
00231 
00232         if (!spoolss_io_q_deleteprinter("", &q_u, data, 0)) {
00233                 DEBUG(0,("spoolss_io_q_deleteprinter: unable to unmarshall SPOOL_Q_DELETEPRINTER.\n"));
00234                 return False;
00235         }
00236 
00237         r_u.status = _spoolss_deleteprinter(p, &q_u, &r_u);
00238 
00239         if (!spoolss_io_r_deleteprinter("",&r_u,rdata,0)) {
00240                 DEBUG(0,("spoolss_io_r_deleteprinter: unable to marshall SPOOL_R_DELETEPRINTER.\n"));
00241                 return False;
00242         }
00243 
00244         return True;
00245 }

static BOOL api_spoolss_deleteprinterdriver ( pipes_struct p  )  [static]

srv_spoolss.c254 行で定義されています。

参照先 _spoolss_deleteprinterdriver()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_deleteprinterdriver()spoolss_io_r_deleteprinterdriver()spool_r_deleteprinterdriver::status.

00255 {
00256         SPOOL_Q_DELETEPRINTERDRIVER q_u;
00257         SPOOL_R_DELETEPRINTERDRIVER r_u;
00258         prs_struct *data = &p->in_data.data;
00259         prs_struct *rdata = &p->out_data.rdata;
00260 
00261         ZERO_STRUCT(q_u);
00262         ZERO_STRUCT(r_u);
00263 
00264         if (!spoolss_io_q_deleteprinterdriver("", &q_u, data, 0)) {
00265                 DEBUG(0,("spoolss_io_q_deleteprinterdriver: unable to unmarshall SPOOL_Q_DELETEPRINTERDRIVER.\n"));
00266                 return False;
00267         }
00268 
00269         r_u.status = _spoolss_deleteprinterdriver(p, &q_u, &r_u);
00270 
00271         if (!spoolss_io_r_deleteprinterdriver("",&r_u,rdata,0)) {
00272                 DEBUG(0,("spoolss_io_r_deleteprinter: unable to marshall SPOOL_R_DELETEPRINTER.\n"));
00273                 return False;
00274         }
00275 
00276         return True;
00277 }

static BOOL api_spoolss_rffpcnex ( pipes_struct p  )  [static]

srv_spoolss.c285 行で定義されています。

参照先 _spoolss_rffpcnex()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_rffpcnex()spoolss_io_r_rffpcnex()spool_r_rffpcnex::status.

00286 {
00287         SPOOL_Q_RFFPCNEX q_u;
00288         SPOOL_R_RFFPCNEX r_u;
00289         prs_struct *data = &p->in_data.data;
00290         prs_struct *rdata = &p->out_data.rdata;
00291 
00292         ZERO_STRUCT(q_u);
00293         ZERO_STRUCT(r_u);
00294 
00295         if (!spoolss_io_q_rffpcnex("", &q_u, data, 0)) {
00296                 DEBUG(0,("spoolss_io_q_rffpcnex: unable to unmarshall SPOOL_Q_RFFPCNEX.\n"));
00297                 return False;
00298         }
00299 
00300         r_u.status = _spoolss_rffpcnex(p, &q_u, &r_u);
00301 
00302         if (!spoolss_io_r_rffpcnex("", &r_u, rdata, 0)) {
00303                 DEBUG(0,("spoolss_io_r_rffpcnex: unable to marshall SPOOL_R_RFFPCNEX.\n"));
00304                 return False;
00305         }
00306 
00307         return True;
00308 }

static BOOL api_spoolss_rfnpcnex ( pipes_struct p  )  [static]

srv_spoolss.c322 行で定義されています。

参照先 _spoolss_rfnpcnex()spool_notify_info::data_input_data::datapipes_struct::in_dataspool_r_rfnpcnex::infopipes_struct::out_data_output_data::rdataspoolss_io_q_rfnpcnex()spoolss_io_r_rfnpcnex()spool_r_rfnpcnex::status.

00323 {
00324         SPOOL_Q_RFNPCNEX q_u;
00325         SPOOL_R_RFNPCNEX r_u;
00326         prs_struct *data = &p->in_data.data;
00327         prs_struct *rdata = &p->out_data.rdata;
00328 
00329         ZERO_STRUCT(q_u);
00330         ZERO_STRUCT(r_u);
00331 
00332         if (!spoolss_io_q_rfnpcnex("", &q_u, data, 0)) {
00333                 DEBUG(0,("spoolss_io_q_rfnpcnex: unable to unmarshall SPOOL_Q_RFNPCNEX.\n"));
00334                 return False;
00335         }
00336 
00337         r_u.status = _spoolss_rfnpcnex(p, &q_u, &r_u);
00338 
00339         if (!spoolss_io_r_rfnpcnex("", &r_u, rdata, 0)) {
00340                 SAFE_FREE(r_u.info.data);
00341                 DEBUG(0,("spoolss_io_r_rfnpcnex: unable to marshall SPOOL_R_RFNPCNEX.\n"));
00342                 return False;
00343         }
00344 
00345         SAFE_FREE(r_u.info.data);
00346 
00347         return True;
00348 }

static BOOL api_spoolss_enumprinters ( pipes_struct p  )  [static]

srv_spoolss.c357 行で定義されています。

参照先 _spoolss_enumprinters()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_enumprinters()spoolss_io_r_enumprinters()spool_r_enumprinters::status.

00358 {
00359         SPOOL_Q_ENUMPRINTERS q_u;
00360         SPOOL_R_ENUMPRINTERS r_u;
00361         prs_struct *data = &p->in_data.data;
00362         prs_struct *rdata = &p->out_data.rdata;
00363 
00364         ZERO_STRUCT(q_u);
00365         ZERO_STRUCT(r_u);
00366 
00367         if (!spoolss_io_q_enumprinters("", &q_u, data, 0)) {
00368                 DEBUG(0,("spoolss_io_q_enumprinters: unable to unmarshall SPOOL_Q_ENUMPRINTERS.\n"));
00369                 return False;
00370         }
00371 
00372         r_u.status = _spoolss_enumprinters( p, &q_u, &r_u);
00373 
00374         if (!spoolss_io_r_enumprinters("", &r_u, rdata, 0)) {
00375                 DEBUG(0,("spoolss_io_r_enumprinters: unable to marshall SPOOL_R_ENUMPRINTERS.\n"));
00376                 return False;
00377         }
00378 
00379         return True;
00380 }

static BOOL api_spoolss_getprinter ( pipes_struct p  )  [static]

srv_spoolss.c388 行で定義されています。

参照先 _spoolss_getprinter()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_getprinter()spoolss_io_r_getprinter()spool_r_getprinter::status.

00389 {
00390         SPOOL_Q_GETPRINTER q_u;
00391         SPOOL_R_GETPRINTER r_u;
00392         prs_struct *data = &p->in_data.data;
00393         prs_struct *rdata = &p->out_data.rdata;
00394 
00395         ZERO_STRUCT(q_u);
00396         ZERO_STRUCT(r_u);
00397 
00398         if(!spoolss_io_q_getprinter("", &q_u, data, 0)) {
00399                 DEBUG(0,("spoolss_io_q_getprinter: unable to unmarshall SPOOL_Q_GETPRINTER.\n"));
00400                 return False;
00401         }
00402 
00403         r_u.status = _spoolss_getprinter(p, &q_u, &r_u);
00404 
00405         if(!spoolss_io_r_getprinter("",&r_u,rdata,0)) {
00406                 DEBUG(0,("spoolss_io_r_getprinter: unable to marshall SPOOL_R_GETPRINTER.\n"));
00407                 return False;
00408         }
00409 
00410         return True;
00411 }

static BOOL api_spoolss_getprinterdriver2 ( pipes_struct p  )  [static]

srv_spoolss.c419 行で定義されています。

参照先 _spoolss_getprinterdriver2()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_getprinterdriver2()spoolss_io_r_getprinterdriver2()spool_r_getprinterdriver2::status.

00420 {
00421         SPOOL_Q_GETPRINTERDRIVER2 q_u;
00422         SPOOL_R_GETPRINTERDRIVER2 r_u;
00423         prs_struct *data = &p->in_data.data;
00424         prs_struct *rdata = &p->out_data.rdata;
00425 
00426         ZERO_STRUCT(q_u);
00427         ZERO_STRUCT(r_u);
00428 
00429         if(!spoolss_io_q_getprinterdriver2("", &q_u, data, 0)) {
00430                 DEBUG(0,("spoolss_io_q_getprinterdriver2: unable to unmarshall SPOOL_Q_GETPRINTERDRIVER2.\n"));
00431                 return False;
00432         }
00433 
00434         r_u.status = _spoolss_getprinterdriver2(p, &q_u, &r_u);
00435         
00436         if(!spoolss_io_r_getprinterdriver2("",&r_u,rdata,0)) {
00437                 DEBUG(0,("spoolss_io_r_getprinterdriver2: unable to marshall SPOOL_R_GETPRINTERDRIVER2.\n"));
00438                 return False;
00439         }
00440         
00441         return True;
00442 }

static BOOL api_spoolss_startpageprinter ( pipes_struct p  )  [static]

srv_spoolss.c450 行で定義されています。

参照先 _spoolss_startpageprinter()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_startpageprinter()spoolss_io_r_startpageprinter()spool_r_startpageprinter::status.

00451 {
00452         SPOOL_Q_STARTPAGEPRINTER q_u;
00453         SPOOL_R_STARTPAGEPRINTER r_u;
00454         prs_struct *data = &p->in_data.data;
00455         prs_struct *rdata = &p->out_data.rdata;
00456 
00457         ZERO_STRUCT(q_u);
00458         ZERO_STRUCT(r_u);
00459 
00460         if(!spoolss_io_q_startpageprinter("", &q_u, data, 0)) {
00461                 DEBUG(0,("spoolss_io_q_startpageprinter: unable to unmarshall SPOOL_Q_STARTPAGEPRINTER.\n"));
00462                 return False;
00463         }
00464 
00465         r_u.status = _spoolss_startpageprinter(p, &q_u, &r_u);
00466 
00467         if(!spoolss_io_r_startpageprinter("",&r_u,rdata,0)) {
00468                 DEBUG(0,("spoolss_io_r_startpageprinter: unable to marshall SPOOL_R_STARTPAGEPRINTER.\n"));
00469                 return False;
00470         }
00471 
00472         return True;
00473 }

static BOOL api_spoolss_endpageprinter ( pipes_struct p  )  [static]

srv_spoolss.c481 行で定義されています。

参照先 _spoolss_endpageprinter()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_endpageprinter()spoolss_io_r_endpageprinter()spool_r_endpageprinter::status.

00482 {
00483         SPOOL_Q_ENDPAGEPRINTER q_u;
00484         SPOOL_R_ENDPAGEPRINTER r_u;
00485         prs_struct *data = &p->in_data.data;
00486         prs_struct *rdata = &p->out_data.rdata;
00487 
00488         ZERO_STRUCT(q_u);
00489         ZERO_STRUCT(r_u);
00490 
00491         if(!spoolss_io_q_endpageprinter("", &q_u, data, 0)) {
00492                 DEBUG(0,("spoolss_io_q_endpageprinter: unable to unmarshall SPOOL_Q_ENDPAGEPRINTER.\n"));
00493                 return False;
00494         }
00495 
00496         r_u.status = _spoolss_endpageprinter(p, &q_u, &r_u);
00497 
00498         if(!spoolss_io_r_endpageprinter("",&r_u,rdata,0)) {
00499                 DEBUG(0,("spoolss_io_r_endpageprinter: unable to marshall SPOOL_R_ENDPAGEPRINTER.\n"));
00500                 return False;
00501         }
00502 
00503         return True;
00504 }

static BOOL api_spoolss_startdocprinter ( pipes_struct p  )  [static]

srv_spoolss.c509 行で定義されています。

参照先 _spoolss_startdocprinter()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_startdocprinter()spoolss_io_r_startdocprinter()spool_r_startdocprinter::status.

00510 {
00511         SPOOL_Q_STARTDOCPRINTER q_u;
00512         SPOOL_R_STARTDOCPRINTER r_u;
00513         prs_struct *data = &p->in_data.data;
00514         prs_struct *rdata = &p->out_data.rdata;
00515 
00516         ZERO_STRUCT(q_u);
00517         ZERO_STRUCT(r_u);
00518 
00519         if(!spoolss_io_q_startdocprinter("", &q_u, data, 0)) {
00520                 DEBUG(0,("spoolss_io_q_startdocprinter: unable to unmarshall SPOOL_Q_STARTDOCPRINTER.\n"));
00521                 return False;
00522         }
00523 
00524         r_u.status = _spoolss_startdocprinter(p, &q_u, &r_u);
00525 
00526         if(!spoolss_io_r_startdocprinter("",&r_u,rdata,0)) {
00527                 DEBUG(0,("spoolss_io_r_startdocprinter: unable to marshall SPOOL_R_STARTDOCPRINTER.\n"));
00528                 return False;
00529         }
00530 
00531         return True;
00532 }

static BOOL api_spoolss_enddocprinter ( pipes_struct p  )  [static]

srv_spoolss.c537 行で定義されています。

参照先 _spoolss_enddocprinter()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_enddocprinter()spoolss_io_r_enddocprinter()spool_r_enddocprinter::status.

00538 {
00539         SPOOL_Q_ENDDOCPRINTER q_u;
00540         SPOOL_R_ENDDOCPRINTER r_u;
00541         prs_struct *data = &p->in_data.data;
00542         prs_struct *rdata = &p->out_data.rdata;
00543 
00544         ZERO_STRUCT(q_u);
00545         ZERO_STRUCT(r_u);
00546 
00547         if(!spoolss_io_q_enddocprinter("", &q_u, data, 0)) {
00548                 DEBUG(0,("spoolss_io_q_enddocprinter: unable to unmarshall SPOOL_Q_ENDDOCPRINTER.\n"));
00549                 return False;
00550         }
00551 
00552         r_u.status = _spoolss_enddocprinter(p, &q_u, &r_u);
00553 
00554         if(!spoolss_io_r_enddocprinter("",&r_u,rdata,0)) {
00555                 DEBUG(0,("spoolss_io_r_enddocprinter: unable to marshall SPOOL_R_ENDDOCPRINTER.\n"));
00556                 return False;
00557         }
00558 
00559         return True;            
00560 }

static BOOL api_spoolss_writeprinter ( pipes_struct p  )  [static]

srv_spoolss.c565 行で定義されています。

参照先 _spoolss_writeprinter()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_writeprinter()spoolss_io_r_writeprinter()spool_r_writeprinter::status.

00566 {
00567         SPOOL_Q_WRITEPRINTER q_u;
00568         SPOOL_R_WRITEPRINTER r_u;
00569         prs_struct *data = &p->in_data.data;
00570         prs_struct *rdata = &p->out_data.rdata;
00571 
00572         ZERO_STRUCT(q_u);
00573         ZERO_STRUCT(r_u);
00574 
00575         if(!spoolss_io_q_writeprinter("", &q_u, data, 0)) {
00576                 DEBUG(0,("spoolss_io_q_writeprinter: unable to unmarshall SPOOL_Q_WRITEPRINTER.\n"));
00577                 return False;
00578         }
00579 
00580         r_u.status = _spoolss_writeprinter(p, &q_u, &r_u);
00581 
00582         if(!spoolss_io_r_writeprinter("",&r_u,rdata,0)) {
00583                 DEBUG(0,("spoolss_io_r_writeprinter: unable to marshall SPOOL_R_WRITEPRINTER.\n"));
00584                 return False;
00585         }
00586 
00587         return True;
00588 }

static BOOL api_spoolss_setprinter ( pipes_struct p  )  [static]

srv_spoolss.c594 行で定義されています。

参照先 _spoolss_setprinter()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_setprinter()spoolss_io_r_setprinter()spool_r_setprinter::status.

00595 {
00596         SPOOL_Q_SETPRINTER q_u;
00597         SPOOL_R_SETPRINTER r_u;
00598         prs_struct *data = &p->in_data.data;
00599         prs_struct *rdata = &p->out_data.rdata;
00600 
00601         ZERO_STRUCT(q_u);
00602         ZERO_STRUCT(r_u);
00603 
00604         if(!spoolss_io_q_setprinter("", &q_u, data, 0)) {
00605                 DEBUG(0,("spoolss_io_q_setprinter: unable to unmarshall SPOOL_Q_SETPRINTER.\n"));
00606                 return False;
00607         }
00608         
00609         r_u.status = _spoolss_setprinter(p, &q_u, &r_u);
00610         
00611         if(!spoolss_io_r_setprinter("",&r_u,rdata,0)) {
00612                 DEBUG(0,("spoolss_io_r_setprinter: unable to marshall SPOOL_R_SETPRINTER.\n"));
00613                 return False;
00614         }
00615 
00616         return True;
00617 }

static BOOL api_spoolss_fcpn ( pipes_struct p  )  [static]

srv_spoolss.c622 行で定義されています。

参照先 _spoolss_fcpn()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_fcpn()spoolss_io_r_fcpn()spool_r_fcpn::status.

00623 {
00624         SPOOL_Q_FCPN q_u;
00625         SPOOL_R_FCPN r_u;
00626         prs_struct *data = &p->in_data.data;
00627         prs_struct *rdata = &p->out_data.rdata;
00628 
00629         ZERO_STRUCT(q_u);
00630         ZERO_STRUCT(r_u);
00631 
00632         if(!spoolss_io_q_fcpn("", &q_u, data, 0)) {
00633                 DEBUG(0,("spoolss_io_q_fcpn: unable to unmarshall SPOOL_Q_FCPN.\n"));
00634                 return False;
00635         }
00636 
00637         r_u.status = _spoolss_fcpn(p, &q_u, &r_u);
00638 
00639         if(!spoolss_io_r_fcpn("",&r_u,rdata,0)) {
00640                 DEBUG(0,("spoolss_io_r_fcpn: unable to marshall SPOOL_R_FCPN.\n"));
00641                 return False;
00642         }
00643 
00644         return True;
00645 }

static BOOL api_spoolss_addjob ( pipes_struct p  )  [static]

srv_spoolss.c650 行で定義されています。

参照先 _spoolss_addjob()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_addjob()spoolss_io_r_addjob()spool_r_addjob::status.

00651 {
00652         SPOOL_Q_ADDJOB q_u;
00653         SPOOL_R_ADDJOB r_u;
00654         prs_struct *data = &p->in_data.data;
00655         prs_struct *rdata = &p->out_data.rdata;
00656 
00657         ZERO_STRUCT(q_u);
00658         ZERO_STRUCT(r_u);
00659 
00660         if(!spoolss_io_q_addjob("", &q_u, data, 0)) {
00661                 DEBUG(0,("spoolss_io_q_addjob: unable to unmarshall SPOOL_Q_ADDJOB.\n"));
00662                 return False;
00663         }
00664 
00665         r_u.status = _spoolss_addjob(p, &q_u, &r_u);
00666                 
00667         if(!spoolss_io_r_addjob("",&r_u,rdata,0)) {
00668                 DEBUG(0,("spoolss_io_r_addjob: unable to marshall SPOOL_R_ADDJOB.\n"));
00669                 return False;
00670         }
00671 
00672         return True;            
00673 }

static BOOL api_spoolss_enumjobs ( pipes_struct p  )  [static]

srv_spoolss.c678 行で定義されています。

参照先 _spoolss_enumjobs()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_enumjobs()spoolss_io_r_enumjobs()spool_r_enumjobs::status.

00679 {
00680         SPOOL_Q_ENUMJOBS q_u;
00681         SPOOL_R_ENUMJOBS r_u;
00682         prs_struct *data = &p->in_data.data;
00683         prs_struct *rdata = &p->out_data.rdata;
00684 
00685         ZERO_STRUCT(q_u);
00686         ZERO_STRUCT(r_u);
00687 
00688         if (!spoolss_io_q_enumjobs("", &q_u, data, 0)) {
00689                 DEBUG(0,("spoolss_io_q_enumjobs: unable to unmarshall SPOOL_Q_ENUMJOBS.\n"));
00690                 return False;
00691         }
00692 
00693         r_u.status = _spoolss_enumjobs(p, &q_u, &r_u);
00694 
00695         if (!spoolss_io_r_enumjobs("",&r_u,rdata,0)) {
00696                 DEBUG(0,("spoolss_io_r_enumjobs: unable to marshall SPOOL_R_ENUMJOBS.\n"));
00697                 return False;
00698         }
00699 
00700         return True;
00701 }

static BOOL api_spoolss_schedulejob ( pipes_struct p  )  [static]

srv_spoolss.c706 行で定義されています。

参照先 _spoolss_schedulejob()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_schedulejob()spoolss_io_r_schedulejob()spool_r_schedulejob::status.

00707 {
00708         SPOOL_Q_SCHEDULEJOB q_u;
00709         SPOOL_R_SCHEDULEJOB r_u;
00710         prs_struct *data = &p->in_data.data;
00711         prs_struct *rdata = &p->out_data.rdata;
00712 
00713         ZERO_STRUCT(q_u);
00714         ZERO_STRUCT(r_u);
00715 
00716         if(!spoolss_io_q_schedulejob("", &q_u, data, 0)) {
00717                 DEBUG(0,("spoolss_io_q_schedulejob: unable to unmarshall SPOOL_Q_SCHEDULEJOB.\n"));
00718                 return False;
00719         }
00720 
00721         r_u.status = _spoolss_schedulejob(p, &q_u, &r_u);
00722 
00723         if(!spoolss_io_r_schedulejob("",&r_u,rdata,0)) {
00724                 DEBUG(0,("spoolss_io_r_schedulejob: unable to marshall SPOOL_R_SCHEDULEJOB.\n"));
00725                 return False;
00726         }
00727 
00728         return True;
00729 }

static BOOL api_spoolss_setjob ( pipes_struct p  )  [static]

srv_spoolss.c734 行で定義されています。

参照先 _spoolss_setjob()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_setjob()spoolss_io_r_setjob()spool_r_setjob::status.

00735 {
00736         SPOOL_Q_SETJOB q_u;
00737         SPOOL_R_SETJOB r_u;
00738         prs_struct *data = &p->in_data.data;
00739         prs_struct *rdata = &p->out_data.rdata;
00740 
00741         ZERO_STRUCT(q_u);
00742         ZERO_STRUCT(r_u);
00743 
00744         if(!spoolss_io_q_setjob("", &q_u, data, 0)) {
00745                 DEBUG(0,("spoolss_io_q_setjob: unable to unmarshall SPOOL_Q_SETJOB.\n"));
00746                 return False;
00747         }
00748 
00749         r_u.status = _spoolss_setjob(p, &q_u, &r_u);
00750 
00751         if(!spoolss_io_r_setjob("",&r_u,rdata,0)) {
00752                 DEBUG(0,("spoolss_io_r_setjob: unable to marshall SPOOL_R_SETJOB.\n"));
00753                 return False;
00754         }
00755 
00756         return True;
00757 }

static BOOL api_spoolss_enumprinterdrivers ( pipes_struct p  )  [static]

srv_spoolss.c762 行で定義されています。

参照先 _spoolss_enumprinterdrivers()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_enumprinterdrivers()spoolss_io_r_enumprinterdrivers()spool_r_enumprinterdrivers::status.

00763 {
00764         SPOOL_Q_ENUMPRINTERDRIVERS q_u;
00765         SPOOL_R_ENUMPRINTERDRIVERS r_u;
00766         prs_struct *data = &p->in_data.data;
00767         prs_struct *rdata = &p->out_data.rdata;
00768 
00769         ZERO_STRUCT(q_u);
00770         ZERO_STRUCT(r_u);
00771 
00772         if (!spoolss_io_q_enumprinterdrivers("", &q_u, data, 0)) {
00773                 DEBUG(0,("spoolss_io_q_enumprinterdrivers: unable to unmarshall SPOOL_Q_ENUMPRINTERDRIVERS.\n"));
00774                 return False;
00775         }
00776 
00777         r_u.status = _spoolss_enumprinterdrivers(p, &q_u, &r_u);
00778 
00779         if (!spoolss_io_r_enumprinterdrivers("",&r_u,rdata,0)) {
00780                 DEBUG(0,("spoolss_io_r_enumprinterdrivers: unable to marshall SPOOL_R_ENUMPRINTERDRIVERS.\n"));
00781                 return False;
00782         }
00783 
00784         return True;
00785 }

static BOOL api_spoolss_getform ( pipes_struct p  )  [static]

srv_spoolss.c790 行で定義されています。

参照先 _spoolss_getform()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_getform()spoolss_io_r_getform()spool_r_getform::status.

00791 {
00792         SPOOL_Q_GETFORM q_u;
00793         SPOOL_R_GETFORM r_u;
00794         prs_struct *data = &p->in_data.data;
00795         prs_struct *rdata = &p->out_data.rdata;
00796 
00797         ZERO_STRUCT(q_u);
00798         ZERO_STRUCT(r_u);
00799 
00800         if (!spoolss_io_q_getform("", &q_u, data, 0)) {
00801                 DEBUG(0,("spoolss_io_q_getform: unable to unmarshall SPOOL_Q_GETFORM.\n"));
00802                 return False;
00803         }
00804 
00805         r_u.status = _spoolss_getform(p, &q_u, &r_u);
00806 
00807         if (!spoolss_io_r_getform("",&r_u,rdata,0)) {
00808                 DEBUG(0,("spoolss_io_r_getform: unable to marshall SPOOL_R_GETFORM.\n"));
00809                 return False;
00810         }
00811 
00812         return True;
00813 }

static BOOL api_spoolss_enumforms ( pipes_struct p  )  [static]

srv_spoolss.c818 行で定義されています。

参照先 _spoolss_enumforms()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_enumforms()spoolss_io_r_enumforms()spool_r_enumforms::status.

00819 {
00820         SPOOL_Q_ENUMFORMS q_u;
00821         SPOOL_R_ENUMFORMS r_u;
00822         prs_struct *data = &p->in_data.data;
00823         prs_struct *rdata = &p->out_data.rdata;
00824 
00825         ZERO_STRUCT(q_u);
00826         ZERO_STRUCT(r_u);
00827 
00828         if (!spoolss_io_q_enumforms("", &q_u, data, 0)) {
00829                 DEBUG(0,("spoolss_io_q_enumforms: unable to unmarshall SPOOL_Q_ENUMFORMS.\n"));
00830                 return False;
00831         }
00832 
00833         r_u.status = _spoolss_enumforms(p, &q_u, &r_u);
00834 
00835         if (!spoolss_io_r_enumforms("",&r_u,rdata,0)) {
00836                 DEBUG(0,("spoolss_io_r_enumforms: unable to marshall SPOOL_R_ENUMFORMS.\n"));
00837                 return False;
00838         }
00839 
00840         return True;
00841 }

static BOOL api_spoolss_enumports ( pipes_struct p  )  [static]

srv_spoolss.c846 行で定義されています。

参照先 _spoolss_enumports()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_enumports()spoolss_io_r_enumports()spool_r_enumports::status.

00847 {
00848         SPOOL_Q_ENUMPORTS q_u;
00849         SPOOL_R_ENUMPORTS r_u;
00850         prs_struct *data = &p->in_data.data;
00851         prs_struct *rdata = &p->out_data.rdata;
00852 
00853         ZERO_STRUCT(q_u);
00854         ZERO_STRUCT(r_u);
00855 
00856         if(!spoolss_io_q_enumports("", &q_u, data, 0)) {
00857                 DEBUG(0,("spoolss_io_q_enumports: unable to unmarshall SPOOL_Q_ENUMPORTS.\n"));
00858                 return False;
00859         }
00860 
00861         r_u.status = _spoolss_enumports(p, &q_u, &r_u);
00862 
00863         if (!spoolss_io_r_enumports("",&r_u,rdata,0)) {
00864                 DEBUG(0,("spoolss_io_r_enumports: unable to marshall SPOOL_R_ENUMPORTS.\n"));
00865                 return False;
00866         }
00867 
00868         return True;
00869 }

static BOOL api_spoolss_addprinterex ( pipes_struct p  )  [static]

srv_spoolss.c874 行で定義されています。

参照先 _spoolss_addprinterex()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_addprinterex()spoolss_io_r_addprinterex()SPOOL_R_ADDPRINTEREX::status.

00875 {
00876         SPOOL_Q_ADDPRINTEREX q_u;
00877         SPOOL_R_ADDPRINTEREX r_u;
00878         prs_struct *data = &p->in_data.data;
00879         prs_struct *rdata = &p->out_data.rdata;
00880         
00881         ZERO_STRUCT(q_u);
00882         ZERO_STRUCT(r_u);
00883         
00884         if(!spoolss_io_q_addprinterex("", &q_u, data, 0)) {
00885                 DEBUG(0,("spoolss_io_q_addprinterex: unable to unmarshall SPOOL_Q_ADDPRINTEREX.\n"));
00886                 return False;
00887         }
00888         
00889         r_u.status = _spoolss_addprinterex(p, &q_u, &r_u);
00890                                 
00891         if(!spoolss_io_r_addprinterex("", &r_u, rdata, 0)) {
00892                 DEBUG(0,("spoolss_io_r_addprinterex: unable to marshall SPOOL_R_ADDPRINTEREX.\n"));
00893                 return False;
00894         }
00895         
00896         return True;
00897 }

static BOOL api_spoolss_addprinterdriver ( pipes_struct p  )  [static]

srv_spoolss.c902 行で定義されています。

参照先 _spoolss_addprinterdriver()_input_data::datapipes_struct::in_dataspool_q_addprinterdriver::levelpipes_struct::out_data_output_data::rdatasetup_fault_pdu()spoolss_io_q_addprinterdriver()spoolss_io_r_addprinterdriver()spool_r_addprinterdriver::status.

00903 {
00904         SPOOL_Q_ADDPRINTERDRIVER q_u;
00905         SPOOL_R_ADDPRINTERDRIVER r_u;
00906         prs_struct *data = &p->in_data.data;
00907         prs_struct *rdata = &p->out_data.rdata;
00908         
00909         ZERO_STRUCT(q_u);
00910         ZERO_STRUCT(r_u);
00911         
00912         if(!spoolss_io_q_addprinterdriver("", &q_u, data, 0)) {
00913                 if (q_u.level != 3 && q_u.level != 6) {
00914                         /* Clever hack from Martin Zielinski <mz@seh.de>
00915                          * to allow downgrade from level 8 (Vista).
00916                          */
00917                         DEBUG(3,("api_spoolss_addprinterdriver: unknown SPOOL_Q_ADDPRINTERDRIVER level %u.\n",
00918                                 (unsigned int)q_u.level ));
00919                         setup_fault_pdu(p, NT_STATUS(DCERPC_FAULT_INVALID_TAG));
00920                         return True;
00921                 }
00922                 DEBUG(0,("spoolss_io_q_addprinterdriver: unable to unmarshall SPOOL_Q_ADDPRINTERDRIVER.\n"));
00923                 return False;
00924         }
00925         
00926         r_u.status = _spoolss_addprinterdriver(p, &q_u, &r_u);
00927                                 
00928         if(!spoolss_io_r_addprinterdriver("", &r_u, rdata, 0)) {
00929                 DEBUG(0,("spoolss_io_r_addprinterdriver: unable to marshall SPOOL_R_ADDPRINTERDRIVER.\n"));
00930                 return False;
00931         }
00932         
00933         return True;
00934 }

static BOOL api_spoolss_getprinterdriverdirectory ( pipes_struct p  )  [static]

srv_spoolss.c939 行で定義されています。

参照先 _spoolss_getprinterdriverdirectory()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_getprinterdriverdir()spoolss_io_r_getprinterdriverdir()spool_r_getprinterdriverdirectory::status.

00940 {
00941         SPOOL_Q_GETPRINTERDRIVERDIR q_u;
00942         SPOOL_R_GETPRINTERDRIVERDIR r_u;
00943         prs_struct *data = &p->in_data.data;
00944         prs_struct *rdata = &p->out_data.rdata;
00945 
00946         ZERO_STRUCT(q_u);
00947         ZERO_STRUCT(r_u);
00948 
00949         if(!spoolss_io_q_getprinterdriverdir("", &q_u, data, 0)) {
00950                 DEBUG(0,("spoolss_io_q_getprinterdriverdir: unable to unmarshall SPOOL_Q_GETPRINTERDRIVERDIR.\n"));
00951                 return False;
00952         }
00953 
00954         r_u.status = _spoolss_getprinterdriverdirectory(p, &q_u, &r_u);
00955 
00956         if(!spoolss_io_r_getprinterdriverdir("", &r_u, rdata, 0)) {
00957                 DEBUG(0,("spoolss_io_r_getprinterdriverdir: unable to marshall SPOOL_R_GETPRINTERDRIVERDIR.\n"));
00958                 return False;
00959         }
00960 
00961         return True;
00962 }

static BOOL api_spoolss_enumprinterdata ( pipes_struct p  )  [static]

srv_spoolss.c967 行で定義されています。

参照先 _spoolss_enumprinterdata()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_enumprinterdata()spoolss_io_r_enumprinterdata()spool_r_enumprinterdata::status.

00968 {
00969         SPOOL_Q_ENUMPRINTERDATA q_u;
00970         SPOOL_R_ENUMPRINTERDATA r_u;
00971         prs_struct *data = &p->in_data.data;
00972         prs_struct *rdata = &p->out_data.rdata;
00973         
00974         ZERO_STRUCT(q_u);
00975         ZERO_STRUCT(r_u);
00976         
00977         if(!spoolss_io_q_enumprinterdata("", &q_u, data, 0)) {
00978                 DEBUG(0,("spoolss_io_q_enumprinterdata: unable to unmarshall SPOOL_Q_ENUMPRINTERDATA.\n"));
00979                 return False;
00980         }
00981         
00982         r_u.status = _spoolss_enumprinterdata(p, &q_u, &r_u);
00983                                 
00984         if(!spoolss_io_r_enumprinterdata("", &r_u, rdata, 0)) {
00985                 DEBUG(0,("spoolss_io_r_enumprinterdata: unable to marshall SPOOL_R_ENUMPRINTERDATA.\n"));
00986                 return False;
00987         }
00988 
00989         return True;
00990 }

static BOOL api_spoolss_setprinterdata ( pipes_struct p  )  [static]

srv_spoolss.c995 行で定義されています。

参照先 _spoolss_setprinterdata()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_setprinterdata()spoolss_io_r_setprinterdata()spool_r_setprinterdata::status.

00996 {
00997         SPOOL_Q_SETPRINTERDATA q_u;
00998         SPOOL_R_SETPRINTERDATA r_u;
00999         prs_struct *data = &p->in_data.data;
01000         prs_struct *rdata = &p->out_data.rdata;
01001         
01002         ZERO_STRUCT(q_u);
01003         ZERO_STRUCT(r_u);
01004         
01005         if(!spoolss_io_q_setprinterdata("", &q_u, data, 0)) {
01006                 DEBUG(0,("spoolss_io_q_setprinterdata: unable to unmarshall SPOOL_Q_SETPRINTERDATA.\n"));
01007                 return False;
01008         }
01009         
01010         r_u.status = _spoolss_setprinterdata(p, &q_u, &r_u);
01011                                 
01012         if(!spoolss_io_r_setprinterdata("", &r_u, rdata, 0)) {
01013                 DEBUG(0,("spoolss_io_r_setprinterdata: unable to marshall SPOOL_R_SETPRINTERDATA.\n"));
01014                 return False;
01015         }
01016 
01017         return True;
01018 }

static BOOL api_spoolss_reset_printer ( pipes_struct p  )  [static]

srv_spoolss.c1022 行で定義されています。

参照先 _spoolss_resetprinter()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_resetprinter()spoolss_io_r_resetprinter()spool_r_resetprinter::status.

01023 {
01024         SPOOL_Q_RESETPRINTER q_u;
01025         SPOOL_R_RESETPRINTER r_u;
01026         prs_struct *data = &p->in_data.data;
01027         prs_struct *rdata = &p->out_data.rdata;
01028 
01029         ZERO_STRUCT(q_u);
01030         ZERO_STRUCT(r_u);
01031 
01032         if(!spoolss_io_q_resetprinter("", &q_u, data, 0)) {
01033                 DEBUG(0,("spoolss_io_q_setprinterdata: unable to unmarshall SPOOL_Q_SETPRINTERDATA.\n"));
01034                 return False;
01035         }
01036         
01037         r_u.status = _spoolss_resetprinter(p, &q_u, &r_u);
01038 
01039         if(!spoolss_io_r_resetprinter("", &r_u, rdata, 0)) {
01040                 DEBUG(0,("spoolss_io_r_setprinterdata: unable to marshall SPOOL_R_RESETPRINTER.\n"));
01041                 return False;
01042         }
01043 
01044         return True;
01045 }

static BOOL api_spoolss_addform ( pipes_struct p  )  [static]

srv_spoolss.c1049 行で定義されています。

参照先 _spoolss_addform()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_addform()spoolss_io_r_addform()spool_r_addform::status.

01050 {
01051         SPOOL_Q_ADDFORM q_u;
01052         SPOOL_R_ADDFORM r_u;
01053         prs_struct *data = &p->in_data.data;
01054         prs_struct *rdata = &p->out_data.rdata;
01055 
01056         ZERO_STRUCT(q_u);
01057         ZERO_STRUCT(r_u);
01058         
01059         if(!spoolss_io_q_addform("", &q_u, data, 0)) {
01060                 DEBUG(0,("spoolss_io_q_addform: unable to unmarshall SPOOL_Q_ADDFORM.\n"));
01061                 return False;
01062         }
01063         
01064         r_u.status = _spoolss_addform(p, &q_u, &r_u);
01065         
01066         if(!spoolss_io_r_addform("", &r_u, rdata, 0)) {
01067                 DEBUG(0,("spoolss_io_r_addform: unable to marshall SPOOL_R_ADDFORM.\n"));
01068                 return False;
01069         }
01070 
01071         return True;
01072 }

static BOOL api_spoolss_deleteform ( pipes_struct p  )  [static]

srv_spoolss.c1077 行で定義されています。

参照先 _spoolss_deleteform()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_deleteform()spoolss_io_r_deleteform()spool_r_deleteform::status.

01078 {
01079         SPOOL_Q_DELETEFORM q_u;
01080         SPOOL_R_DELETEFORM r_u;
01081         prs_struct *data = &p->in_data.data;
01082         prs_struct *rdata = &p->out_data.rdata;
01083 
01084         ZERO_STRUCT(q_u);
01085         ZERO_STRUCT(r_u);
01086         
01087         if(!spoolss_io_q_deleteform("", &q_u, data, 0)) {
01088                 DEBUG(0,("spoolss_io_q_deleteform: unable to unmarshall SPOOL_Q_DELETEFORM.\n"));
01089                 return False;
01090         }
01091         
01092         r_u.status = _spoolss_deleteform(p, &q_u, &r_u);
01093         
01094         if(!spoolss_io_r_deleteform("", &r_u, rdata, 0)) {
01095                 DEBUG(0,("spoolss_io_r_deleteform: unable to marshall SPOOL_R_DELETEFORM.\n"));
01096                 return False;
01097         }
01098 
01099         return True;
01100 }

static BOOL api_spoolss_setform ( pipes_struct p  )  [static]

srv_spoolss.c1105 行で定義されています。

参照先 _spoolss_setform()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_setform()spoolss_io_r_setform()spool_r_setform::status.

01106 {
01107         SPOOL_Q_SETFORM q_u;
01108         SPOOL_R_SETFORM r_u;
01109         prs_struct *data = &p->in_data.data;
01110         prs_struct *rdata = &p->out_data.rdata;
01111 
01112         ZERO_STRUCT(q_u);
01113         ZERO_STRUCT(r_u);
01114         
01115         if(!spoolss_io_q_setform("", &q_u, data, 0)) {
01116                 DEBUG(0,("spoolss_io_q_setform: unable to unmarshall SPOOL_Q_SETFORM.\n"));
01117                 return False;
01118         }
01119         
01120         r_u.status = _spoolss_setform(p, &q_u, &r_u);
01121                                       
01122         if(!spoolss_io_r_setform("", &r_u, rdata, 0)) {
01123                 DEBUG(0,("spoolss_io_r_setform: unable to marshall SPOOL_R_SETFORM.\n"));
01124                 return False;
01125         }
01126 
01127         return True;
01128 }

static BOOL api_spoolss_enumprintprocessors ( pipes_struct p  )  [static]

srv_spoolss.c1133 行で定義されています。

参照先 _spoolss_enumprintprocessors()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_enumprintprocessors()spoolss_io_r_enumprintprocessors()spool_r_enumprintprocessors::status.

01134 {
01135         SPOOL_Q_ENUMPRINTPROCESSORS q_u;
01136         SPOOL_R_ENUMPRINTPROCESSORS r_u;
01137         prs_struct *data = &p->in_data.data;
01138         prs_struct *rdata = &p->out_data.rdata;
01139 
01140         ZERO_STRUCT(q_u);
01141         ZERO_STRUCT(r_u);
01142         
01143         if(!spoolss_io_q_enumprintprocessors("", &q_u, data, 0)) {
01144                 DEBUG(0,("spoolss_io_q_enumprintprocessors: unable to unmarshall SPOOL_Q_ENUMPRINTPROCESSORS.\n"));
01145                 return False;
01146         }
01147         
01148         r_u.status = _spoolss_enumprintprocessors(p, &q_u, &r_u);
01149 
01150         if(!spoolss_io_r_enumprintprocessors("", &r_u, rdata, 0)) {
01151                 DEBUG(0,("spoolss_io_r_enumprintprocessors: unable to marshall SPOOL_R_ENUMPRINTPROCESSORS.\n"));
01152                 return False;
01153         }
01154         
01155         return True;
01156 }

static BOOL api_spoolss_addprintprocessor ( pipes_struct p  )  [static]

srv_spoolss.c1161 行で定義されています。

参照先 _input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_addprintprocessor()spoolss_io_r_addprintprocessor()spool_r_addprintprocessor::status.

01162 {
01163         SPOOL_Q_ADDPRINTPROCESSOR q_u;
01164         SPOOL_R_ADDPRINTPROCESSOR r_u;
01165         prs_struct *data = &p->in_data.data;
01166         prs_struct *rdata = &p->out_data.rdata;
01167 
01168         ZERO_STRUCT(q_u);
01169         ZERO_STRUCT(r_u);
01170         
01171         if(!spoolss_io_q_addprintprocessor("", &q_u, data, 0)) {
01172                 DEBUG(0,("spoolss_io_q_addprintprocessor: unable to unmarshall SPOOL_Q_ADDPRINTPROCESSOR.\n"));
01173                 return False;
01174         }
01175         
01176         /* for now, just indicate success and ignore the add.  We'll
01177            automatically set the winprint processor for printer
01178            entries later.  Used to debug the LexMark Optra S 1855 PCL
01179            driver --jerry */
01180         r_u.status = WERR_OK;
01181 
01182         if(!spoolss_io_r_addprintprocessor("", &r_u, rdata, 0)) {
01183                 DEBUG(0,("spoolss_io_r_addprintprocessor: unable to marshall SPOOL_R_ADDPRINTPROCESSOR.\n"));
01184                 return False;
01185         }
01186         
01187         return True;
01188 }

static BOOL api_spoolss_enumprintprocdatatypes ( pipes_struct p  )  [static]

srv_spoolss.c1193 行で定義されています。

参照先 _spoolss_enumprintprocdatatypes()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_enumprintprocdatatypes()spoolss_io_r_enumprintprocdatatypes()spool_r_enumprintprocdatatypes::status.

01194 {
01195         SPOOL_Q_ENUMPRINTPROCDATATYPES q_u;
01196         SPOOL_R_ENUMPRINTPROCDATATYPES r_u;
01197         prs_struct *data = &p->in_data.data;
01198         prs_struct *rdata = &p->out_data.rdata;
01199 
01200         ZERO_STRUCT(q_u);
01201         ZERO_STRUCT(r_u);
01202         
01203         if(!spoolss_io_q_enumprintprocdatatypes("", &q_u, data, 0)) {
01204                 DEBUG(0,("spoolss_io_q_enumprintprocdatatypes: unable to unmarshall SPOOL_Q_ENUMPRINTPROCDATATYPES.\n"));
01205                 return False;
01206         }
01207         
01208         r_u.status = _spoolss_enumprintprocdatatypes(p, &q_u, &r_u);
01209 
01210         if(!spoolss_io_r_enumprintprocdatatypes("", &r_u, rdata, 0)) {
01211                 DEBUG(0,("spoolss_io_r_enumprintprocdatatypes: unable to marshall SPOOL_R_ENUMPRINTPROCDATATYPES.\n"));
01212                 return False;
01213         }
01214         
01215         return True;
01216 }

static BOOL api_spoolss_enumprintmonitors ( pipes_struct p  )  [static]

srv_spoolss.c1221 行で定義されています。

参照先 _spoolss_enumprintmonitors()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_enumprintmonitors()spoolss_io_r_enumprintmonitors()spool_r_enumprintmonitors::status.

01222 {
01223         SPOOL_Q_ENUMPRINTMONITORS q_u;
01224         SPOOL_R_ENUMPRINTMONITORS r_u;
01225         prs_struct *data = &p->in_data.data;
01226         prs_struct *rdata = &p->out_data.rdata;
01227 
01228         ZERO_STRUCT(q_u);
01229         ZERO_STRUCT(r_u);
01230         
01231         if (!spoolss_io_q_enumprintmonitors("", &q_u, data, 0)) {
01232                 DEBUG(0,("spoolss_io_q_enumprintmonitors: unable to unmarshall SPOOL_Q_ENUMPRINTMONITORS.\n"));
01233                 return False;
01234         }
01235                 
01236         r_u.status = _spoolss_enumprintmonitors(p, &q_u, &r_u);
01237 
01238         if (!spoolss_io_r_enumprintmonitors("", &r_u, rdata, 0)) {
01239                 DEBUG(0,("spoolss_io_r_enumprintmonitors: unable to marshall SPOOL_R_ENUMPRINTMONITORS.\n"));
01240                 return False;
01241         }
01242         
01243         return True;
01244 }

static BOOL api_spoolss_getjob ( pipes_struct p  )  [static]

srv_spoolss.c1249 行で定義されています。

参照先 _spoolss_getjob()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_getjob()spoolss_io_r_getjob()spool_r_getjob::status.

01250 {
01251         SPOOL_Q_GETJOB q_u;
01252         SPOOL_R_GETJOB r_u;
01253         prs_struct *data = &p->in_data.data;
01254         prs_struct *rdata = &p->out_data.rdata;
01255         
01256         ZERO_STRUCT(q_u);
01257         ZERO_STRUCT(r_u);
01258         
01259         if(!spoolss_io_q_getjob("", &q_u, data, 0)) {
01260                 DEBUG(0,("spoolss_io_q_getjob: unable to unmarshall SPOOL_Q_GETJOB.\n"));
01261                 return False;
01262         }
01263 
01264         r_u.status = _spoolss_getjob(p, &q_u, &r_u);
01265         
01266         if(!spoolss_io_r_getjob("",&r_u,rdata,0)) {
01267                 DEBUG(0,("spoolss_io_r_getjob: unable to marshall SPOOL_R_GETJOB.\n"));
01268                 return False;
01269         }
01270                 
01271         return True;
01272 }

static BOOL api_spoolss_getprinterdataex ( pipes_struct p  )  [static]

srv_spoolss.c1280 行で定義されています。

参照先 _spoolss_getprinterdataex()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_getprinterdataex()spoolss_io_r_getprinterdataex()spool_r_getprinterdataex::status.

01281 {
01282         SPOOL_Q_GETPRINTERDATAEX q_u;
01283         SPOOL_R_GETPRINTERDATAEX r_u;
01284         prs_struct *data = &p->in_data.data;
01285         prs_struct *rdata = &p->out_data.rdata;
01286 
01287         ZERO_STRUCT(q_u);
01288         ZERO_STRUCT(r_u);
01289 
01290         /* read the stream and fill the struct */
01291         if (!spoolss_io_q_getprinterdataex("", &q_u, data, 0)) {
01292                 DEBUG(0,("spoolss_io_q_getprinterdataex: unable to unmarshall SPOOL_Q_GETPRINTERDATAEX.\n"));
01293                 return False;
01294         }
01295         
01296         r_u.status = _spoolss_getprinterdataex( p, &q_u, &r_u);
01297 
01298         if (!spoolss_io_r_getprinterdataex("", &r_u, rdata, 0)) {
01299                 DEBUG(0,("spoolss_io_r_getprinterdataex: unable to marshall SPOOL_R_GETPRINTERDATAEX.\n"));
01300                 return False;
01301         }
01302 
01303         return True;
01304 }

static BOOL api_spoolss_setprinterdataex ( pipes_struct p  )  [static]

srv_spoolss.c1309 行で定義されています。

参照先 _spoolss_setprinterdataex()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_setprinterdataex()spoolss_io_r_setprinterdataex()spool_r_setprinterdataex::status.

01310 {
01311         SPOOL_Q_SETPRINTERDATAEX q_u;
01312         SPOOL_R_SETPRINTERDATAEX r_u;
01313         prs_struct *data = &p->in_data.data;
01314         prs_struct *rdata = &p->out_data.rdata;
01315         
01316         ZERO_STRUCT(q_u);
01317         ZERO_STRUCT(r_u);
01318         
01319         if(!spoolss_io_q_setprinterdataex("", &q_u, data, 0)) {
01320                 DEBUG(0,("spoolss_io_q_setprinterdataex: unable to unmarshall SPOOL_Q_SETPRINTERDATAEX.\n"));
01321                 return False;
01322         }
01323         
01324         r_u.status = _spoolss_setprinterdataex(p, &q_u, &r_u);
01325                                 
01326         if(!spoolss_io_r_setprinterdataex("", &r_u, rdata, 0)) {
01327                 DEBUG(0,("spoolss_io_r_setprinterdataex: unable to marshall SPOOL_R_SETPRINTERDATAEX.\n"));
01328                 return False;
01329         }
01330 
01331         return True;
01332 }

static BOOL api_spoolss_enumprinterkey ( pipes_struct p  )  [static]

srv_spoolss.c1338 行で定義されています。

参照先 _spoolss_enumprinterkey()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_enumprinterkey()spoolss_io_r_enumprinterkey()spool_r_enumprinterkey::status.

01339 {
01340         SPOOL_Q_ENUMPRINTERKEY q_u;
01341         SPOOL_R_ENUMPRINTERKEY r_u;
01342         prs_struct *data = &p->in_data.data;
01343         prs_struct *rdata = &p->out_data.rdata;
01344         
01345         ZERO_STRUCT(q_u);
01346         ZERO_STRUCT(r_u);
01347         
01348         if(!spoolss_io_q_enumprinterkey("", &q_u, data, 0)) {
01349                 DEBUG(0,("spoolss_io_q_setprinterkey: unable to unmarshall SPOOL_Q_ENUMPRINTERKEY.\n"));
01350                 return False;
01351         }
01352         
01353         r_u.status = _spoolss_enumprinterkey(p, &q_u, &r_u);
01354                                 
01355         if(!spoolss_io_r_enumprinterkey("", &r_u, rdata, 0)) {
01356                 DEBUG(0,("spoolss_io_r_enumprinterkey: unable to marshall SPOOL_R_ENUMPRINTERKEY.\n"));
01357                 return False;
01358         }
01359 
01360         return True;
01361 }

static BOOL api_spoolss_enumprinterdataex ( pipes_struct p  )  [static]

srv_spoolss.c1366 行で定義されています。

参照先 _spoolss_enumprinterdataex()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_enumprinterdataex()spoolss_io_r_enumprinterdataex()spool_r_enumprinterdataex::status.

01367 {
01368         SPOOL_Q_ENUMPRINTERDATAEX q_u;
01369         SPOOL_R_ENUMPRINTERDATAEX r_u;
01370         prs_struct *data = &p->in_data.data;
01371         prs_struct *rdata = &p->out_data.rdata;
01372         
01373         ZERO_STRUCT(q_u);
01374         ZERO_STRUCT(r_u);
01375         
01376         if(!spoolss_io_q_enumprinterdataex("", &q_u, data, 0)) {
01377                 DEBUG(0,("spoolss_io_q_enumprinterdataex: unable to unmarshall SPOOL_Q_ENUMPRINTERDATAEX.\n"));
01378                 return False;
01379         }
01380         
01381         r_u.status = _spoolss_enumprinterdataex(p, &q_u, &r_u);
01382                                 
01383         if(!spoolss_io_r_enumprinterdataex("", &r_u, rdata, 0)) {
01384                 DEBUG(0,("spoolss_io_r_enumprinterdataex: unable to marshall SPOOL_R_ENUMPRINTERDATAEX.\n"));
01385                 return False;
01386         }
01387 
01388         return True;
01389 }

static BOOL api_spoolss_getprintprocessordirectory ( pipes_struct p  )  [static]

srv_spoolss.c1394 行で定義されています。

参照先 _spoolss_getprintprocessordirectory()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_getprintprocessordirectory()spoolss_io_r_getprintprocessordirectory()spool_r_getprintprocessordirectory::status.

01395 {
01396         SPOOL_Q_GETPRINTPROCESSORDIRECTORY q_u;
01397         SPOOL_R_GETPRINTPROCESSORDIRECTORY r_u;
01398         prs_struct *data = &p->in_data.data;
01399         prs_struct *rdata = &p->out_data.rdata;
01400         
01401         ZERO_STRUCT(q_u);
01402         ZERO_STRUCT(r_u);
01403         
01404         if(!spoolss_io_q_getprintprocessordirectory("", &q_u, data, 0)) {
01405                 DEBUG(0,("spoolss_io_q_getprintprocessordirectory: unable to unmarshall SPOOL_Q_GETPRINTPROCESSORDIRECTORY.\n"));
01406                 return False;
01407         }
01408         
01409         r_u.status = _spoolss_getprintprocessordirectory(p, &q_u, &r_u);
01410                                 
01411         if(!spoolss_io_r_getprintprocessordirectory("", &r_u, rdata, 0)) {
01412                 DEBUG(0,("spoolss_io_r_getprintprocessordirectory: unable to marshall SPOOL_R_GETPRINTPROCESSORDIRECTORY.\n"));
01413                 return False;
01414         }
01415         
01416         return True;
01417 }

static BOOL api_spoolss_deleteprinterdataex ( pipes_struct p  )  [static]

srv_spoolss.c1422 行で定義されています。

参照先 _spoolss_deleteprinterdataex()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_deleteprinterdataex()spoolss_io_r_deleteprinterdataex()spool_r_deleteprinterdataex::status.

01423 {
01424         SPOOL_Q_DELETEPRINTERDATAEX q_u;
01425         SPOOL_R_DELETEPRINTERDATAEX r_u;
01426         prs_struct *data = &p->in_data.data;
01427         prs_struct *rdata = &p->out_data.rdata;
01428         
01429         ZERO_STRUCT(q_u);
01430         ZERO_STRUCT(r_u);
01431         
01432         if(!spoolss_io_q_deleteprinterdataex("", &q_u, data, 0)) {
01433                 DEBUG(0,("spoolss_io_q_deleteprinterdataex: unable to unmarshall SPOOL_Q_DELETEPRINTERDATAEX.\n"));
01434                 return False;
01435         }
01436         
01437         r_u.status = _spoolss_deleteprinterdataex(p, &q_u, &r_u);
01438                                 
01439         if(!spoolss_io_r_deleteprinterdataex("", &r_u, rdata, 0)) {
01440                 DEBUG(0,("spoolss_io_r_deleteprinterdataex: unable to marshall SPOOL_R_DELETEPRINTERDATAEX.\n"));
01441                 return False;
01442         }
01443         
01444         return True;
01445 }

static BOOL api_spoolss_deleteprinterkey ( pipes_struct p  )  [static]

srv_spoolss.c1450 行で定義されています。

参照先 _spoolss_deleteprinterkey()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_deleteprinterkey()spoolss_io_r_deleteprinterkey()spool_r_deleteprinterkey::status.

01451 {
01452         SPOOL_Q_DELETEPRINTERKEY q_u;
01453         SPOOL_R_DELETEPRINTERKEY r_u;
01454         prs_struct *data = &p->in_data.data;
01455         prs_struct *rdata = &p->out_data.rdata;
01456         
01457         ZERO_STRUCT(q_u);
01458         ZERO_STRUCT(r_u);
01459         
01460         if(!spoolss_io_q_deleteprinterkey("", &q_u, data, 0)) {
01461                 DEBUG(0,("spoolss_io_q_deleteprinterkey: unable to unmarshall SPOOL_Q_DELETEPRINTERKEY.\n"));
01462                 return False;
01463         }
01464         
01465         r_u.status = _spoolss_deleteprinterkey(p, &q_u, &r_u);
01466                                 
01467         if(!spoolss_io_r_deleteprinterkey("", &r_u, rdata, 0)) {
01468                 DEBUG(0,("spoolss_io_r_deleteprinterkey: unable to marshall SPOOL_R_DELETEPRINTERKEY.\n"));
01469                 return False;
01470         }
01471         
01472         return True;
01473 }

static BOOL api_spoolss_addprinterdriverex ( pipes_struct p  )  [static]

srv_spoolss.c1478 行で定義されています。

参照先 _spoolss_addprinterdriverex()_input_data::datapipes_struct::in_dataspool_q_addprinterdriverex::levelpipes_struct::out_data_output_data::rdatasetup_fault_pdu()spoolss_io_q_addprinterdriverex()spoolss_io_r_addprinterdriverex()spool_r_addprinterdriverex::status.

01479 {
01480         SPOOL_Q_ADDPRINTERDRIVEREX q_u;
01481         SPOOL_R_ADDPRINTERDRIVEREX r_u;
01482         prs_struct *data = &p->in_data.data;
01483         prs_struct *rdata = &p->out_data.rdata;
01484         
01485         ZERO_STRUCT(q_u);
01486         ZERO_STRUCT(r_u);
01487         
01488         if(!spoolss_io_q_addprinterdriverex("", &q_u, data, 0)) {
01489                 if (q_u.level != 3 && q_u.level != 6) {
01490                         /* Clever hack from Martin Zielinski <mz@seh.de>
01491                          * to allow downgrade from level 8 (Vista).
01492                          */
01493                         DEBUG(3,("api_spoolss_addprinterdriverex: unknown SPOOL_Q_ADDPRINTERDRIVEREX level %u.\n",
01494                                 (unsigned int)q_u.level ));
01495                         setup_fault_pdu(p, NT_STATUS(DCERPC_FAULT_INVALID_TAG));
01496                         return True;
01497                 }
01498                 DEBUG(0,("spoolss_io_q_addprinterdriverex: unable to unmarshall SPOOL_Q_ADDPRINTERDRIVEREX.\n"));
01499                 return False;
01500         }
01501         
01502         r_u.status = _spoolss_addprinterdriverex(p, &q_u, &r_u);
01503                                 
01504         if(!spoolss_io_r_addprinterdriverex("", &r_u, rdata, 0)) {
01505                 DEBUG(0,("spoolss_io_r_addprinterdriverex: unable to marshall SPOOL_R_ADDPRINTERDRIVEREX.\n"));
01506                 return False;
01507         }
01508         
01509         return True;
01510 }

static BOOL api_spoolss_deleteprinterdriverex ( pipes_struct p  )  [static]

srv_spoolss.c1515 行で定義されています。

参照先 _spoolss_deleteprinterdriverex()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_deleteprinterdriverex()spoolss_io_r_deleteprinterdriverex()spool_r_deleteprinterdriverex::status.

01516 {
01517         SPOOL_Q_DELETEPRINTERDRIVEREX q_u;
01518         SPOOL_R_DELETEPRINTERDRIVEREX r_u;
01519         prs_struct *data = &p->in_data.data;
01520         prs_struct *rdata = &p->out_data.rdata;
01521         
01522         ZERO_STRUCT(q_u);
01523         ZERO_STRUCT(r_u);
01524         
01525         if(!spoolss_io_q_deleteprinterdriverex("", &q_u, data, 0)) {
01526                 DEBUG(0,("spoolss_io_q_deleteprinterdriverex: unable to unmarshall SPOOL_Q_DELETEPRINTERDRIVEREX.\n"));
01527                 return False;
01528         }
01529         
01530         r_u.status = _spoolss_deleteprinterdriverex(p, &q_u, &r_u);
01531                                 
01532         if(!spoolss_io_r_deleteprinterdriverex("", &r_u, rdata, 0)) {
01533                 DEBUG(0,("spoolss_io_r_deleteprinterdriverex: unable to marshall SPOOL_R_DELETEPRINTERDRIVEREX.\n"));
01534                 return False;
01535         }
01536         
01537         return True;
01538 }

static BOOL api_spoolss_xcvdataport ( pipes_struct p  )  [static]

srv_spoolss.c1543 行で定義されています。

参照先 _spoolss_xcvdataport()_input_data::datapipes_struct::in_datapipes_struct::out_data_output_data::rdataspoolss_io_q_xcvdataport()spoolss_io_r_xcvdataport()SPOOL_R_XCVDATAPORT::status.

01544 {
01545         SPOOL_Q_XCVDATAPORT q_u;
01546         SPOOL_R_XCVDATAPORT r_u;
01547         prs_struct *data = &p->in_data.data;
01548         prs_struct *rdata = &p->out_data.rdata;
01549         
01550         ZERO_STRUCT(q_u);
01551         ZERO_STRUCT(r_u);
01552         
01553         if(!spoolss_io_q_xcvdataport("", &q_u, data, 0)) {
01554                 DEBUG(0,("spoolss_io_q_replyopenprinter: unable to unmarshall SPOOL_Q_XCVDATAPORT.\n"));
01555                 return False;
01556         }
01557         
01558         r_u.status = _spoolss_xcvdataport(p, &q_u, &r_u);
01559                                 
01560         if(!spoolss_io_r_xcvdataport("", &r_u, rdata, 0)) {
01561                 DEBUG(0,("spoolss_io_r_replyopenprinter: unable to marshall SPOOL_R_XCVDATAPORT.\n"));
01562                 return False;
01563         }
01564         
01565         return True;
01566 }

void spoolss_get_pipe_fns ( struct api_struct **  fns,
int *  n_fns 
)

srv_spoolss.c1628 行で定義されています。

参照先 api_spoolss_cmds.

参照元 get_pipe_fns().

01629 {
01630         *fns = api_spoolss_cmds;
01631         *n_fns = sizeof(api_spoolss_cmds) / sizeof(struct api_struct);
01632 }

NTSTATUS rpc_spoolss_init ( void   ) 

srv_spoolss.c1634 行で定義されています。

参照先 api_spoolss_cmdsrpc_pipe_register_commands().

01635 {
01636   return rpc_pipe_register_commands(SMB_RPC_INTERFACE_VERSION, "spoolss", "spoolss", api_spoolss_cmds,
01637                                     sizeof(api_spoolss_cmds) / sizeof(struct api_struct));
01638 }


変数

struct api_struct api_spoolss_cmds[]

srv_spoolss.c1572 行で定義されています。

参照元 rpc_spoolss_init()spoolss_get_pipe_fns().


Sambaに対してSat Aug 29 21:24:20 2009に生成されました。  doxygen 1.4.7