pstrcpy(desthost,optarg);
if( 0 == port )
port = 139;
- message = True;
- break;
- case 'i':
+ message = True;
+ break;
+ case 'i':
set_global_scope(optarg);
break;
case 'N':
}
break;
case 'D':
- pstrcpy(base_directory,optarg);
+ fstrcpy(base_directory,optarg);
break;
case 'c':
cmdstr = optarg;
#endif /* !_SPLINT_ */
+char * __unsafe_string_function_usage_here__(void);
+
+#if 0 && defined __GNUC__ && __GNUC__ >= 2 && defined __OPTIMIZE__
+
+#define pstrcpy(d,s) ((sizeof(d) != sizeof(pstring) && sizeof(d) != sizeof(char *)) ? __unsafe_string_function_usage_here__() : safe_strcpy((d), (s),sizeof(pstring)-1))
+#define pstrcat(d,s) ((sizeof(d) != sizeof(pstring) && sizeof(d) != sizeof(char *)) ? __unsafe_string_function_usage_here__() : safe_strcat((d), (s),sizeof(pstring)-1))
+#define fstrcpy(d,s) ((sizeof(d) != sizeof(fstring) && sizeof(d) != sizeof(char *)) ? __unsafe_string_function_usage_here__() : safe_strcpy((d),(s),sizeof(fstring)-1))
+#define fstrcat(d,s) ((sizeof(d) != sizeof(fstring) && sizeof(d) != sizeof(char *)) ? __unsafe_string_function_usage_here__() : safe_strcat((d),(s),sizeof(fstring)-1))
+
+#define fstrterminate(d) ((sizeof(d) != sizeof(fstring) && sizeof(d) != sizeof(char *)) ? __unsafe_string_function_usage_here__() : (((d)[sizeof(fstring)-1]) = '\0'))
+#define pstrterminate(d) ((sizeof(d) != sizeof(pstring) && sizeof(d) != sizeof(char *)) ? __unsafe_string_function_usage_here__() : (((d)[sizeof(pstring)-1]) = '\0'))
+
+#define wpstrcpy(d,s) ((sizeof(d) != sizeof(wpstring) && sizeof(d) != sizeof(smb_ucs2_t *)) ? __unsafe_string_function_usage_here__() : safe_strcpy_w((d),(s),sizeof(wpstring)))
+#define wpstrcat(d,s) ((sizeof(d) != sizeof(wpstring) && sizeof(d) != sizeof(smb_ucs2_t *)) ? __unsafe_string_function_usage_here__() : safe_strcat_w((d),(s),sizeof(wpstring)))
+#define wfstrcpy(d,s) ((sizeof(d) != sizeof(wfstring) && sizeof(d) != sizeof(smb_ucs2_t *)) ? __unsafe_string_function_usage_here__() : safe_strcpy_w((d),(s),sizeof(wfstring)))
+#define wfstrcat(d,s) ((sizeof(d) != sizeof(wfstring) && sizeof(d) != sizeof(smb_ucs2_t *)) ? __unsafe_string_function_usage_here__() : safe_strcat_w((d),(s),sizeof(wfstring)))
+
+#else
+
#define pstrcpy(d,s) safe_strcpy((d), (s),sizeof(pstring)-1)
#define pstrcat(d,s) safe_strcat((d), (s),sizeof(pstring)-1)
#define fstrcpy(d,s) safe_strcpy((d),(s),sizeof(fstring)-1)
#define wfstrcpy(d,s) safe_strcpy_w((d),(s),sizeof(wfstring))
#define wfstrcat(d,s) safe_strcat_w((d),(s),sizeof(wfstring))
+#endif
+
/* replace some string functions with multi-byte
versions */
#define strlower(s) strlower_m(s)
kbuf.dptr;
newkey = tdb_nextkey(tdb, kbuf), safe_free(kbuf.dptr), kbuf=newkey) {
- pstring name_type, name, ip_str;
+ fstring name_type;
+ pstring name, ip_str;
char *p;
int type = 0;
int nb_flags;
int len, buflen;
fstring architecture;
pstring directory;
- pstring temp_name;
+ fstring temp_name;
pstring key;
char *buf;
int i, ret;
*queue = NULL;
printername = lp_const_servicename(snum);
pdb = get_print_db_byname(printername);
-
+
if (!pdb)
return 0;
Functions to duplicate a SPOOL_NOTIFY_OPTION struct stored in Printer_entry.
****************************************************************************/
-SPOOL_NOTIFY_OPTION *dup_spool_notify_option(SPOOL_NOTIFY_OPTION *sp)
+static SPOOL_NOTIFY_OPTION *dup_spool_notify_option(SPOOL_NOTIFY_OPTION *sp)
{
SPOOL_NOTIFY_OPTION *new_sp = NULL;
switch(msg->type) {
case PRINTER_NOTIFY_TYPE:
if ( printer_notify_table[msg->field].fn )
- printer_notify_table[msg->field].fn(msg, &data[data_len], mem_ctx);
+ printer_notify_table[msg->field].fn(msg, &data[data_len], mem_ctx);
break;
case JOB_NOTIFY_TYPE:
if ( job_notify_table[msg->field].fn )
- job_notify_table[msg->field].fn(msg, &data[data_len], mem_ctx);
+ job_notify_table[msg->field].fn(msg, &data[data_len], mem_ctx);
break;
default:
*servermajorversion = 0;
*serverminorversion = 0;
- pstrcpy(servername, get_called_name());
+ fstrcpy(servername, get_called_name());
unistr2_to_ascii(architecture, uni_arch, sizeof(architecture)-1);
if (!get_printer_snum(p, handle, &snum))
switch (q_u->info_level) {
case 1:
- fstrcpy(pathname, lp_pathname(snum));
+ pstrcpy(pathname, lp_pathname(snum));
unistr2_to_ascii(comment, &q_u->info.share.info2.info_2_str.uni_remark, sizeof(comment));
type = q_u->info.share.info2.info_2.type;
psd = NULL;
map_generic_share_sd_bits(psd);
break;
case 1004:
- fstrcpy(pathname, lp_pathname(snum));
+ pstrcpy(pathname, lp_pathname(snum));
unistr2_to_ascii(comment, &q_u->info.share.info1004.info_1004_str.uni_remark, sizeof(comment));
type = STYPE_DISKTREE;
break;
return WERR_ACCESS_DENIED;
break;
case 1501:
- fstrcpy(pathname, lp_pathname(snum));
+ pstrcpy(pathname, lp_pathname(snum));
fstrcpy(comment, lp_comment(snum));
psd = q_u->info.share.info1501.sdb->sec;
map_generic_share_sd_bits(psd);
return False;
}
+ /* this might be client code - but shouldn't this be an fstrcpy etc? */
+
StrnCpy (short_archi, archi_table[i].short_archi, strlen(archi_table[i].short_archi));
DEBUGADD(108,("index: [%d]\n", i));
int argc, char **argv)
{
WERROR werror;
- pstring printername;
+ fstring printername;
fstring servername, user;
POLICY_HND hnd;
if (!cli)
return NT_STATUS_UNSUCCESSFUL;
- slprintf (servername, sizeof(fstring)-1, "\\\\%s", cli->desthost);
+ slprintf (servername, sizeof(servername)-1, "\\\\%s", cli->desthost);
strupper (servername);
fstrcpy (user, cli->user_name);
fstrcpy (printername, argv[1]);
fstrcpy(comment, argv[2]);
}
- slprintf (servername, sizeof(fstring)-1, "\\\\%s", cli->desthost);
+ slprintf (servername, sizeof(servername)-1, "\\\\%s", cli->desthost);
strupper (servername);
fstrcpy (printername, argv[1]);
fstrcpy (user, cli->user_name);
info_level = atoi(argv[2]);
}
- slprintf (servername, sizeof(fstring)-1, "\\\\%s", cli->desthost);
+ slprintf (servername, sizeof(servername)-1, "\\\\%s", cli->desthost);
strupper (servername);
- slprintf (printername, sizeof(fstring)-1, "%s\\%s", servername, argv[1]);
+ slprintf (printername, sizeof(printername)-1, "%s\\%s", servername, argv[1]);
fstrcpy (user, cli->user_name);
/* get a printer handle */
/* Open a printer handle */
- slprintf (servername, sizeof(fstring)-1, "\\\\%s", cli->desthost);
+ slprintf (servername, sizeof(servername)-1, "\\\\%s", cli->desthost);
strupper (servername);
if (strncmp(argv[1], ".", sizeof(".")) == 0)
fstrcpy(printername, servername);
else
- slprintf (printername, sizeof(fstring)-1, "%s\\%s",
+ slprintf (printername, sizeof(servername)-1, "%s\\%s",
servername, argv[1]);
fstrcpy (user, cli->user_name);
/* Open a printer handle */
- slprintf (servername, sizeof(fstring)-1, "\\\\%s", cli->desthost);
+ slprintf (servername, sizeof(servername)-1, "\\\\%s", cli->desthost);
strupper (servername);
if (strncmp(argv[1], ".", sizeof(".")) == 0)
fstrcpy(printername, servername);
else
- slprintf (printername, sizeof(fstring)-1, "%s\\%s",
+ slprintf (printername, sizeof(printername)-1, "%s\\%s",
servername, argv[1]);
fstrcpy (user, cli->user_name);
}
/* get the arguments need to open the printer handle */
- slprintf (servername, sizeof(fstring)-1, "\\\\%s", cli->desthost);
+ slprintf (servername, sizeof(servername)-1, "\\\\%s", cli->desthost);
strupper (servername);
fstrcpy (user, cli->user_name);
fstrcpy (printername, argv[1]);
return NT_STATUS_OK;
}
- slprintf (servername, sizeof(fstring)-1, "\\\\%s", cli->desthost);
+ slprintf (servername, sizeof(servername)-1, "\\\\%s", cli->desthost);
strupper (servername);
/* Fill in the DRIVER_INFO_3 struct */
return NT_STATUS_OK;
}
- slprintf (servername, sizeof(fstring)-1, "\\\\%s", cli->desthost);
+ slprintf (servername, sizeof(servername)-1, "\\\\%s", cli->desthost);
strupper (servername);
- slprintf (printername, sizeof(fstring)-1, "%s\\%s", servername, argv[1]);
+ slprintf (printername, sizeof(printername)-1, "%s\\%s", servername, argv[1]);
fstrcpy (user, cli->user_name);
/* Get a printer handle */
return NT_STATUS_OK;
}
- slprintf (servername, sizeof(fstring)-1, "\\\\%s", cli->desthost);
+ slprintf (servername, sizeof(servername)-1, "\\\\%s", cli->desthost);
strupper (servername);
/* delete the driver for all architectures */
return NT_STATUS_OK;
}
- slprintf (servername, sizeof(fstring)-1, "\\\\%s", cli->desthost);
+ slprintf (servername, sizeof(servername)-1, "\\\\%s", cli->desthost);
strupper (servername);
- slprintf (printername, sizeof(fstring)-1, "%s\\%s", servername, argv[1]);
+ slprintf (printername, sizeof(servername)-1, "%s\\%s", servername, argv[1]);
fstrcpy (user, cli->user_name);
/* get a printer handle */
/* Open printer handle */
- slprintf(servername, sizeof(fstring)-1, "\\\\%s", cli->desthost);
+ slprintf(servername, sizeof(servername)-1, "\\\\%s", cli->desthost);
strupper(servername);
fstrcpy(user, cli->user_name);
- fstrcpy(printername, argv[1]);
- slprintf(printername, sizeof(pstring)-1, "\\\\%s\\", cli->desthost);
+ slprintf(printername, sizeof(servername)-1, "\\\\%s\\", cli->desthost);
strupper(printername);
pstrcat(printername, argv[1]);
/* Open printer handle */
- slprintf(servername, sizeof(fstring)-1, "\\\\%s", cli->desthost);
+ slprintf(servername, sizeof(servername)-1, "\\\\%s", cli->desthost);
strupper(servername);
fstrcpy(user, cli->user_name);
- fstrcpy(printername, argv[1]);
- slprintf(printername, sizeof(pstring)-1, "\\\\%s\\", cli->desthost);
+ slprintf(printername, sizeof(printername)-1, "\\\\%s\\", cli->desthost);
strupper(printername);
pstrcat(printername, argv[1]);
/* Open printer handle */
- slprintf(servername, sizeof(fstring)-1, "\\\\%s", cli->desthost);
+ slprintf(servername, sizeof(servername)-1, "\\\\%s", cli->desthost);
strupper(servername);
fstrcpy(user, cli->user_name);
- fstrcpy(printername, argv[1]);
- slprintf(printername, sizeof(pstring)-1, "\\\\%s\\", cli->desthost);
+ slprintf(printername, sizeof(printername)-1, "\\\\%s\\", cli->desthost);
strupper(printername);
pstrcat(printername, argv[1]);
/* Open printer handle */
- slprintf(servername, sizeof(fstring)-1, "\\\\%s", cli->desthost);
+ slprintf(servername, sizeof(servername)-1, "\\\\%s", cli->desthost);
strupper(servername);
fstrcpy(user, cli->user_name);
- fstrcpy(printername, argv[1]);
- slprintf(printername, sizeof(pstring)-1, "\\\\%s\\", cli->desthost);
+ slprintf(printername, sizeof(printername)-1, "\\\\%s\\", cli->desthost);
strupper(printername);
pstrcat(printername, argv[1]);
/* Open printer */
- slprintf(servername, sizeof(fstring) - 1, "\\\\%s", cli->desthost);
+ slprintf(servername, sizeof(servername) - 1, "\\\\%s", cli->desthost);
strupper(servername);
- slprintf(printername, sizeof(fstring) - 1, "\\\\%s\\%s", cli->desthost,
+ slprintf(printername, sizeof(printername) - 1, "\\\\%s\\%s", cli->desthost,
argv[1]);
strupper(printername);
/* Send rffpcnex */
- slprintf(servername, sizeof(fstring) - 1, "\\\\%s", myhostname());
+ slprintf(servername, sizeof(servername) - 1, "\\\\%s", myhostname());
strupper(servername);
result = cli_spoolss_rffpcnex(
case 'U': {
char *lp;
- pstrcpy(username,opt_username);
+ fstrcpy(username,opt_username);
if ((lp=strchr_m(username,'%'))) {
*lp = 0;
- pstrcpy(password,lp+1);
+ fstrcpy(password,lp+1);
got_pass = 1;
memset(strchr_m(opt_username,'%') + 1, 'X',
strlen(password));
return 1;
}
case 'W':
- pstrcpy(domain, opt_domain);
+ fstrcpy(domain, opt_domain);
break;
}
}
if (!next_token(&ptr,s->comment, NULL, sizeof(s->comment))) continue;
if (!next_token(&ptr,s->domain , NULL, sizeof(s->domain))) {
/* this allows us to cope with an old nmbd */
- pstrcpy(s->domain,lp_workgroup());
+ fstrcpy(s->domain,lp_workgroup());
}
if (sscanf(stype,"%X",&s->type) != 1) {
if (!conn->dirptr)
goto SearchEmpty;
string_set(&conn->dirpath,dptr_path(dptr_num));
- fstrcpy(mask, dptr_wcard(dptr_num));
+ pstrcpy(mask, dptr_wcard(dptr_num));
}
if (can_open) {
if (!got_pass) {
char *pass = getpass("Password: ");
if (pass) {
- pstrcpy(password[0], pass);
- pstrcpy(password[1], pass);
+ fstrcpy(password[0], pass);
+ fstrcpy(password[1], pass);
}
}
if (got_pass == 1) {
- pstrcpy(password[1], password[0]);
- pstrcpy(username[1], username[0]);
+ fstrcpy(password[1], password[0]);
+ fstrcpy(username[1], username[0]);
}
if (!cli_session_setup(c, username[snum],
load_interfaces();
if (getenv("USER")) {
- pstrcpy(username[0],getenv("USER"));
- pstrcpy(username[1],getenv("USER"));
+ fstrcpy(username[0],getenv("USER"));
+ fstrcpy(username[1],getenv("USER"));
}
seed = time(NULL);
d_printf("Max of 2 usernames\n");
exit(1);
}
- pstrcpy(username[got_pass],optarg);
+ fstrcpy(username[got_pass],optarg);
p = strchr_m(username[got_pass],'%');
if (p) {
*p = 0;
- pstrcpy(password[got_pass], p+1);
+ fstrcpy(password[got_pass], p+1);
got_pass++;
}
break;
if (!got_pass) {
char *pass = getpass("Password: ");
if (pass) {
- pstrcpy(password, pass);
+ fstrcpy(password, pass);
}
}
load_interfaces();
if (getenv("USER")) {
- pstrcpy(username,getenv("USER"));
+ fstrcpy(username,getenv("USER"));
}
seed = time(NULL);
while ((opt = getopt(argc, argv, "U:s:ho:aAW:O")) != EOF) {
switch (opt) {
case 'U':
- pstrcpy(username,optarg);
+ fstrcpy(username,optarg);
p = strchr_m(username,'%');
if (p) {
*p = 0;
- pstrcpy(password, p+1);
+ fstrcpy(password, p+1);
got_pass = 1;
}
break;
if (!got_pass) {
char *pass = getpass("Password: ");
if (pass) {
- pstrcpy(password, pass);
+ fstrcpy(password, pass);
}
}
load_interfaces();
if (getenv("USER")) {
- pstrcpy(username,getenv("USER"));
+ fstrcpy(username,getenv("USER"));
}
seed = time(NULL);
max_protocol = interpret_protocol(optarg, max_protocol);
break;
case 'U':
- pstrcpy(username,optarg);
+ fstrcpy(username,optarg);
p = strchr_m(username,'%');
if (p) {
*p = 0;
- pstrcpy(password, p+1);
+ fstrcpy(password, p+1);
got_pass = 1;
}
break;
get_myname(myname);
if (*username == 0 && getenv("LOGNAME")) {
- pstrcpy(username,getenv("LOGNAME"));
+ fstrcpy(username,getenv("LOGNAME"));
}
argc--;
#endif
break;
case 'U':
- pstrcpy(username,optarg);
+ fstrcpy(username,optarg);
p = strchr_m(username,'%');
if (p) {
*p = 0;
- pstrcpy(password, p+1);
+ fstrcpy(password, p+1);
gotpass = 1;
}
break;
while (!gotpass) {
p = getpass("Password:");
if (p) {
- pstrcpy(password, p);
+ fstrcpy(password, p);
gotpass = 1;
}
}
{
int opt;
unsigned int lookup_type = 0x0;
- pstring lookup;
+ fstring lookup;
extern int optind;
extern char *optarg;
BOOL find_master=False;
if (!got_pass) {
char *pass = getpass("Password: ");
if (pass) {
- pstrcpy(password, pass);
+ fstrcpy(password, pass);
got_pass = True;
}
}
if ((p=strchr_m(username,'%'))) {
*p = 0;
- pstrcpy(password,p+1);
+ fstrcpy(password,p+1);
got_pass = True;
memset(strchr_m(getenv("USER"), '%') + 1, 'X',
strlen(password));
p = strchr_m(username,'%');
if (p) {
*p = 0;
- pstrcpy(password, p+1);
+ fstrcpy(password, p+1);
got_pass = 1;
}
break;
for (kbuf = tdb_firstkey(tdb);
kbuf.dptr;
newkey = tdb_nextkey(tdb, kbuf), safe_free(kbuf.dptr), kbuf=newkey) {
- pstring name_type, name, ip_str;
+ fstring name_type;
+ pstring name, ip_str;
char *p;
int type = 0;
int nb_flags;