static void free_spool_notify_option(SPOOL_NOTIFY_OPTION **pp)
{
- SPOOL_NOTIFY_OPTION *sp = *pp;
-
- *pp = NULL;
-
- if (!sp)
+ if (*pp == NULL)
return;
- if (sp->ctr.type)
- safe_free(sp->ctr.type);
-
- free(sp);
+ SAFE_FREE((*pp)->ctr.type);
+ SAFE_FREE(*pp);
}
/***************************************************************************
Printer->notify.option=NULL;
Printer->notify.client_connected=False;
- safe_free(Printer);
+ SAFE_FREE(Printer);
}
/****************************************************************************
new_sp->ctr.type = (SPOOL_NOTIFY_OPTION_TYPE *)memdup(sp->ctr.type, sizeof(SPOOL_NOTIFY_OPTION_TYPE) * sp->ctr.count);
if (!new_sp->ctr.type) {
- safe_free(new_sp);
+ SAFE_FREE(new_sp);
return NULL;
}
}
new_printer->notify.option=NULL;
if (!create_policy_hnd(p, hnd, free_printer_entry, new_printer)) {
- safe_free(new_printer);
+ SAFE_FREE(new_printer);
return False;
}
*/
if ((devmode->driverextra != 0) && (devmode->private != NULL)) {
- safe_free(nt_devmode->private);
+ SAFE_FREE(nt_devmode->private);
nt_devmode->driverextra=devmode->driverextra;
if((nt_devmode->private=(uint8 *)malloc(nt_devmode->driverextra * sizeof(uint8))) == NULL)
return False;
DEBUG(5,("getprinterdata_printer:copy done\n"));
- safe_free(idata);
+ SAFE_FREE(idata);
return True;
}
memset(&status, 0, sizeof(status));
print_queue_status(snum, &q, &status);
data->notify_data.value[0]=(uint32) status.status;
- safe_free(q);
+ SAFE_FREE(q);
}
/*******************************************************************
memset(&status, 0, sizeof(status));
data->notify_data.value[0] = print_queue_status(snum, &q, &status);
- safe_free(q);
+ SAFE_FREE(q);
}
/*******************************************************************
free_a_printer(&printer, 2);
done:
- safe_free(queue);
+ SAFE_FREE(queue);
break;
}
}
printer->unknown28 = 0;
printer->unknown29 = 0;
- safe_free(queue);
+ SAFE_FREE(queue);
free_a_printer(&ntprinter,2);
return (True);
}
if (dev == NULL)
return;
- if (dev->private)
- safe_free(dev->private);
-
- safe_free(dev);
+ SAFE_FREE(dev->private);
+ SAFE_FREE(dev);
}
/****************************************************************************
}
free_a_printer(&ntprinter, 2);
- safe_free(queue);
+ SAFE_FREE(queue);
return True;
}
if (construct_printer_info_1(flags, ¤t_prt, snum)) {
if((tp=Realloc(printers, (*returned +1)*sizeof(PRINTER_INFO_1))) == NULL) {
DEBUG(0,("enum_all_printers_info_1: failed to enlarge printers buffer!\n"));
- safe_free(printers);
+ SAFE_FREE(printers);
*returned=0;
return WERR_NOMEM;
}
smb_io_printer_info_1("", buffer, &printers[i], 0);
/* clear memory */
- safe_free(printers);
+ SAFE_FREE(printers);
if (*needed > offered) {
*returned=0;
*needed += spoolss_size_printer_info_1(printer);
if (!alloc_buffer_size(buffer, *needed)) {
- safe_free(printer);
+ SAFE_FREE(printer);
return WERR_INSUFFICIENT_BUFFER;
}
smb_io_printer_info_1("", buffer, printer, 0);
/* clear memory */
- safe_free(printer);
+ SAFE_FREE(printer);
if (*needed > offered) {
*returned=0;
if (construct_printer_info_2(¤t_prt, snum)) {
if((tp=Realloc(printers, (*returned +1)*sizeof(PRINTER_INFO_2))) == NULL) {
DEBUG(0,("enum_all_printers_info_2: failed to enlarge printers buffer!\n"));
- safe_free(printers);
+ SAFE_FREE(printers);
*returned = 0;
return WERR_NOMEM;
}
for (i=0; i<*returned; i++) {
free_devmode(printers[i].devmode);
}
- safe_free(printers);
+ SAFE_FREE(printers);
return WERR_INSUFFICIENT_BUFFER;
}
for (i=0; i<*returned; i++) {
free_devmode(printers[i].devmode);
}
- safe_free(printers);
+ SAFE_FREE(printers);
if (*needed > offered) {
*returned=0;
*needed += spoolss_size_printer_info_0(printer);
if (!alloc_buffer_size(buffer, *needed)) {
- safe_free(printer);
+ SAFE_FREE(printer);
return WERR_INSUFFICIENT_BUFFER;
}
smb_io_printer_info_0("", buffer, printer, 0);
/* clear memory */
- safe_free(printer);
+ SAFE_FREE(printer);
if (*needed > offered) {
return WERR_INSUFFICIENT_BUFFER;
*needed += spoolss_size_printer_info_1(printer);
if (!alloc_buffer_size(buffer, *needed)) {
- safe_free(printer);
+ SAFE_FREE(printer);
return WERR_INSUFFICIENT_BUFFER;
}
smb_io_printer_info_1("", buffer, printer, 0);
/* clear memory */
- safe_free(printer);
+ SAFE_FREE(printer);
if (*needed > offered) {
return WERR_INSUFFICIENT_BUFFER;
static void free_printer_driver_info_3(DRIVER_INFO_3 *info)
{
- safe_free(info->dependentfiles);
+ SAFE_FREE(info->dependentfiles);
}
/****************************************************************************
static void free_printer_driver_info_6(DRIVER_INFO_6 *info)
{
- safe_free(info->dependentfiles);
+ SAFE_FREE(info->dependentfiles);
}
status=construct_printer_driver_info_1(info, snum, servername, architecture, version);
if (!W_ERROR_IS_OK(status)) {
- safe_free(info);
+ SAFE_FREE(info);
return status;
}
*needed += spoolss_size_printer_driver_info_1(info);
if (!alloc_buffer_size(buffer, *needed)) {
- safe_free(info);
+ SAFE_FREE(info);
return WERR_INSUFFICIENT_BUFFER;
}
smb_io_printer_driver_info_1("", buffer, info, 0);
/* clear memory */
- safe_free(info);
+ SAFE_FREE(info);
if (*needed > offered)
return WERR_INSUFFICIENT_BUFFER;
status=construct_printer_driver_info_2(info, snum, servername, architecture, version);
if (!W_ERROR_IS_OK(status)) {
- safe_free(info);
+ SAFE_FREE(info);
return status;
}
*needed += spoolss_size_printer_driver_info_2(info);
if (!alloc_buffer_size(buffer, *needed)) {
- safe_free(info);
+ SAFE_FREE(info);
return WERR_INSUFFICIENT_BUFFER;
}
smb_io_printer_driver_info_2("", buffer, info, 0);
/* clear memory */
- safe_free(info);
+ SAFE_FREE(info);
if (*needed > offered)
return WERR_INSUFFICIENT_BUFFER;
info=(JOB_INFO_1 *)malloc(*returned*sizeof(JOB_INFO_1));
if (info==NULL) {
- safe_free(queue);
+ SAFE_FREE(queue);
*returned=0;
return WERR_NOMEM;
}
for (i=0; i<*returned; i++)
fill_job_info_1(&info[i], &queue[i], i, snum);
- safe_free(queue);
+ SAFE_FREE(queue);
/* check the required size. */
for (i=0; i<*returned; i++)
(*needed) += spoolss_size_job_info_1(&info[i]);
if (!alloc_buffer_size(buffer, *needed)) {
- safe_free(info);
+ SAFE_FREE(info);
return WERR_INSUFFICIENT_BUFFER;
}
smb_io_job_info_1("", buffer, &info[i], 0);
/* clear memory */
- safe_free(info);
+ SAFE_FREE(info);
if (*needed > offered) {
*returned=0;
fill_job_info_2(&(info[i]), &queue[i], i, snum, ntprinter);
free_a_printer(&ntprinter, 2);
- safe_free(queue);
+ SAFE_FREE(queue);
/* check the required size. */
for (i=0; i<*returned; i++)
(*needed) += spoolss_size_job_info_2(&info[i]);
if (!alloc_buffer_size(buffer, *needed)) {
- safe_free(info);
+ SAFE_FREE(info);
return WERR_INSUFFICIENT_BUFFER;
}
for (i = 0; i < *returned; i++)
free_job_info_2(&info[i]);
- free(info);
+ SAFE_FREE(info);
if (*needed > offered) {
*returned=0;
DEBUGADD(4,("count:[%d], status:[%d], [%s]\n", *returned, prt_status.status, prt_status.message));
if (*returned == 0) {
- safe_free(queue);
+ SAFE_FREE(queue);
return WERR_OK;
}
case 2:
return enumjobs_level2(queue, snum, buffer, offered, needed, returned);
default:
- safe_free(queue);
+ SAFE_FREE(queue);
*returned=0;
return WERR_UNKNOWN_LEVEL;
}
if(ndrivers != 0) {
if((tdi1=(DRIVER_INFO_1 *)Realloc(driver_info_1, (*returned+ndrivers) * sizeof(DRIVER_INFO_1))) == NULL) {
DEBUG(0,("enumprinterdrivers_level1: failed to enlarge driver info buffer!\n"));
- safe_free(driver_info_1);
- safe_free(list);
+ SAFE_FREE(driver_info_1);
+ SAFE_FREE(list);
return WERR_NOMEM;
}
else driver_info_1 = tdi1;
status = get_a_printer_driver(&driver, 3, list[i],
architecture, version);
if (!W_ERROR_IS_OK(status)) {
- safe_free(list);
+ SAFE_FREE(list);
return status;
}
fill_printer_driver_info_1(&driver_info_1[*returned+i], driver, servername, architecture );
}
*returned+=ndrivers;
- safe_free(list);
+ SAFE_FREE(list);
}
/* check the required size. */
}
if (!alloc_buffer_size(buffer, *needed)) {
- safe_free(driver_info_1);
+ SAFE_FREE(driver_info_1);
return WERR_INSUFFICIENT_BUFFER;
}
smb_io_printer_driver_info_1("", buffer, &driver_info_1[i], 0);
}
- safe_free(driver_info_1);
+ SAFE_FREE(driver_info_1);
if (*needed > offered) {
*returned=0;
if(ndrivers != 0) {
if((tdi2=(DRIVER_INFO_2 *)Realloc(driver_info_2, (*returned+ndrivers) * sizeof(DRIVER_INFO_2))) == NULL) {
DEBUG(0,("enumprinterdrivers_level2: failed to enlarge driver info buffer!\n"));
- safe_free(driver_info_2);
- safe_free(list);
+ SAFE_FREE(driver_info_2);
+ SAFE_FREE(list);
return WERR_NOMEM;
}
else driver_info_2 = tdi2;
status = get_a_printer_driver(&driver, 3, list[i],
architecture, version);
if (!W_ERROR_IS_OK(status)) {
- safe_free(list);
+ SAFE_FREE(list);
return status;
}
fill_printer_driver_info_2(&driver_info_2[*returned+i], driver, servername);
}
*returned+=ndrivers;
- safe_free(list);
+ SAFE_FREE(list);
}
/* check the required size. */
}
if (!alloc_buffer_size(buffer, *needed)) {
- safe_free(driver_info_2);
+ SAFE_FREE(driver_info_2);
return WERR_INSUFFICIENT_BUFFER;
}
smb_io_printer_driver_info_2("", buffer, &(driver_info_2[i]), 0);
}
- safe_free(driver_info_2);
+ SAFE_FREE(driver_info_2);
if (*needed > offered) {
*returned=0;
if(ndrivers != 0) {
if((tdi3=(DRIVER_INFO_3 *)Realloc(driver_info_3, (*returned+ndrivers) * sizeof(DRIVER_INFO_3))) == NULL) {
DEBUG(0,("enumprinterdrivers_level3: failed to enlarge driver info buffer!\n"));
- safe_free(driver_info_3);
- safe_free(list);
+ SAFE_FREE(driver_info_3);
+ SAFE_FREE(list);
return WERR_NOMEM;
}
else driver_info_3 = tdi3;
status = get_a_printer_driver(&driver, 3, list[i],
architecture, version);
if (!W_ERROR_IS_OK(status)) {
- safe_free(list);
+ SAFE_FREE(list);
return status;
}
fill_printer_driver_info_3(&driver_info_3[*returned+i], driver, servername);
}
*returned+=ndrivers;
- safe_free(list);
+ SAFE_FREE(list);
}
/* check the required size. */
}
if (!alloc_buffer_size(buffer, *needed)) {
- safe_free(driver_info_3);
+ SAFE_FREE(driver_info_3);
return WERR_INSUFFICIENT_BUFFER;
}
}
for (i=0; i<*returned; i++)
- safe_free(driver_info_3[i].dependentfiles);
+ SAFE_FREE(driver_info_3[i].dependentfiles);
- safe_free(driver_info_3);
+ SAFE_FREE(driver_info_3);
if (*needed > offered) {
*returned=0;
return enumprinterdrivers_level3(servername, architecture, buffer, offered, needed, returned);
default:
*returned=0;
- safe_free(list);
+ SAFE_FREE(list);
return WERR_UNKNOWN_LEVEL;
}
}
fill_form_1(&forms_1[i], &builtinlist[i]);
}
- safe_free(builtinlist);
+ SAFE_FREE(builtinlist);
for (; i<*numofforms; i++) {
DEBUGADD(6,("Filling form number [%d]\n",i));
fill_form_1(&forms_1[i], &list[i-numbuiltinforms]);
}
- safe_free(list);
+ SAFE_FREE(list);
/* check the required size. */
for (i=0; i<numbuiltinforms; i++) {
*needed=buffer_size;
if (!alloc_buffer_size(buffer, buffer_size)){
- safe_free(forms_1);
+ SAFE_FREE(forms_1);
return WERR_INSUFFICIENT_BUFFER;
}
smb_io_form_1("", buffer, &forms_1[i], 0);
}
- safe_free(forms_1);
+ SAFE_FREE(forms_1);
if (*needed > offered) {
*numofforms=0;
return WERR_OK;
default:
- safe_free(list);
- safe_free(builtinlist);
+ SAFE_FREE(list);
+ SAFE_FREE(builtinlist);
return WERR_UNKNOWN_LEVEL;
}
}
}
- safe_free(list);
+ SAFE_FREE(list);
if (i == numofforms) {
return WERR_BADFID;
}
return WERR_OK;
default:
- safe_free(list);
+ SAFE_FREE(list);
return WERR_UNKNOWN_LEVEL;
}
}
}
if (!alloc_buffer_size(buffer, *needed)) {
- safe_free(ports);
+ SAFE_FREE(ports);
return WERR_INSUFFICIENT_BUFFER;
}
smb_io_port_1("", buffer, &ports[i], 0);
}
- safe_free(ports);
+ SAFE_FREE(ports);
if (*needed > offered) {
*returned=0;
}
if (!alloc_buffer_size(buffer, *needed)) {
- safe_free(ports);
+ SAFE_FREE(ports);
return WERR_INSUFFICIENT_BUFFER;
}
smb_io_port_2("", buffer, &ports[i], 0);
}
- safe_free(ports);
+ SAFE_FREE(ports);
if (*needed > offered) {
*returned=0;
*needed += spoolss_size_driverdir_info_1(info);
if (!alloc_buffer_size(buffer, *needed)) {
- safe_free(info);
+ SAFE_FREE(info);
return WERR_INSUFFICIENT_BUFFER;
}
smb_io_driverdir_1("", buffer, info, 0);
- safe_free(info);
+ SAFE_FREE(info);
if (*needed > offered)
return WERR_INSUFFICIENT_BUFFER;
*/
if (!get_specific_param_by_index(*printer, 2, idx, value, &data, &type, &data_len)) {
- safe_free(data);
+ SAFE_FREE(data);
free_a_printer(&printer, 2);
return WERR_NO_MORE_ITEMS;
}
#endif
- safe_free(data);
- data = NULL;
+ SAFE_FREE(data);
param_index=0;
biggest_valuesize=0;
DEBUG(6,("current values: [%d], [%d]\n", biggest_valuesize, biggest_datasize));
- safe_free(data);
- data = NULL;
+ SAFE_FREE(data);
param_index++;
}
*/
if (!get_specific_param_by_index(*printer, 2, idx, value, &data, &type, &data_len)) {
- safe_free(data);
+ SAFE_FREE(data);
free_a_printer(&printer, 2);
return WERR_NO_MORE_ITEMS;
}
*out_max_value_len=(in_value_len/sizeof(uint16));
if((*out_value=(uint16 *)talloc_zero(p->mem_ctx,in_value_len*sizeof(uint8))) == NULL) {
- safe_free(data);
+ SAFE_FREE(data);
return WERR_NOMEM;
}
/* the data is counted in bytes */
*out_max_data_len=in_data_len;
if((*data_out=(uint8 *)talloc_zero(p->mem_ctx, in_data_len*sizeof(uint8))) == NULL) {
- safe_free(data);
+ SAFE_FREE(data);
return WERR_NOMEM;
}
memcpy(*data_out, data, (size_t)data_len);
*out_data_len=data_len;
- safe_free(data);
+ SAFE_FREE(data);
return WERR_OK;
}
free_a_printer(&printer, 2);
if (param)
free_nt_printer_param(¶m);
- safe_free(old_param.data);
+ SAFE_FREE(old_param.data);
return status;
}
return WERR_NOMEM;
write_ntforms(&list, count);
- safe_free(list);
+ SAFE_FREE(list);
return WERR_OK;
}
if (!delete_a_form(&list, form_name, &count, &ret))
return WERR_INVALID_PARAM;
- safe_free(list);
+ SAFE_FREE(list);
return ret;
}
update_a_form(&list, form, count);
write_ntforms(&list, count);
- safe_free(list);
+ SAFE_FREE(list);
return WERR_OK;
}
smb_io_printprocessor_info_1("", buffer, info_1, 0);
- safe_free(info_1);
+ SAFE_FREE(info_1);
if (*needed > offered) {
*returned=0;
smb_io_printprocdatatype_info_1("", buffer, info_1, 0);
- safe_free(info_1);
+ SAFE_FREE(info_1);
if (*needed > offered) {
*returned=0;
smb_io_printmonitor_info_1("", buffer, info_1, 0);
- safe_free(info_1);
+ SAFE_FREE(info_1);
if (*needed > offered) {
*returned=0;
smb_io_printmonitor_info_2("", buffer, info_2, 0);
- safe_free(info_2);
+ SAFE_FREE(info_2);
if (*needed > offered) {
*returned=0;
info_1=(JOB_INFO_1 *)malloc(sizeof(JOB_INFO_1));
if (info_1 == NULL) {
- safe_free(queue);
+ SAFE_FREE(queue);
return WERR_NOMEM;
}
}
if (found==False) {
- safe_free(queue);
- safe_free(info_1);
+ SAFE_FREE(queue);
+ SAFE_FREE(info_1);
/* I shoud reply something else ... I can't find the good one */
return WERR_OK;
}
fill_job_info_1(info_1, &(queue[i-1]), i, snum);
- safe_free(queue);
+ SAFE_FREE(queue);
*needed += spoolss_size_job_info_1(info_1);
if (!alloc_buffer_size(buffer, *needed)) {
- safe_free(info_1);
+ SAFE_FREE(info_1);
return WERR_INSUFFICIENT_BUFFER;
}
smb_io_job_info_1("", buffer, info_1, 0);
- safe_free(info_1);
+ SAFE_FREE(info_1);
if (*needed > offered)
return WERR_INSUFFICIENT_BUFFER;
ZERO_STRUCTP(info_2);
if (info_2 == NULL) {
- safe_free(queue);
+ SAFE_FREE(queue);
return WERR_NOMEM;
}
}
if (found==False) {
- safe_free(queue);
- safe_free(info_2);
+ SAFE_FREE(queue);
+ SAFE_FREE(info_2);
/* I shoud reply something else ... I can't find the good one */
return WERR_OK;
}
ret = get_a_printer(&ntprinter, 2, lp_servicename(snum));
if (!W_ERROR_IS_OK(ret)) {
- safe_free(queue);
+ SAFE_FREE(queue);
return ret;
}
fill_job_info_2(info_2, &(queue[i-1]), i, snum, ntprinter);
free_a_printer(&ntprinter, 2);
- safe_free(queue);
+ SAFE_FREE(queue);
*needed += spoolss_size_job_info_2(info_2);
if (!alloc_buffer_size(buffer, *needed)) {
- safe_free(info_2);
+ SAFE_FREE(info_2);
return WERR_INSUFFICIENT_BUFFER;
}
smb_io_job_info_2("", buffer, info_2, 0);
free_job_info_2(info_2);
- free(info_2);
+ SAFE_FREE(info_2);
if (*needed > offered)
return WERR_INSUFFICIENT_BUFFER;
case 2:
return getjob_level_2(queue, count, snum, jobid, buffer, offered, needed);
default:
- safe_free(queue);
+ SAFE_FREE(queue);
return WERR_UNKNOWN_LEVEL;
}
}