mirror of
git://git.code.sf.net/p/cdesktopenv/code
synced 2025-03-09 15:50:02 +00:00
dtlogin: coverity fixes
This commit is contained in:
parent
4e9dc6c50b
commit
13d3e1db50
14 changed files with 52 additions and 60 deletions
|
@ -262,7 +262,7 @@ Account( struct display *d, char *user, char *line, pid_t pid,
|
||||||
|
|
||||||
if (type == LOGIN_PROCESS && d->displayType.location != Local ) {
|
if (type == LOGIN_PROCESS && d->displayType.location != Local ) {
|
||||||
#ifndef SVR4
|
#ifndef SVR4
|
||||||
strncpy(u->ut_host, d->name, sizeof(u->ut_host));
|
snprintf(u->ut_host, sizeof(u->ut_host), "%s", d->name);
|
||||||
#endif
|
#endif
|
||||||
#ifdef __hpux
|
#ifdef __hpux
|
||||||
u->ut_addr = 0;
|
u->ut_addr = 0;
|
||||||
|
|
|
@ -1094,8 +1094,10 @@ writeLocalAuth (FILE *file, Xauth *auth, char *name)
|
||||||
#endif
|
#endif
|
||||||
#ifdef TCPCONN
|
#ifdef TCPCONN
|
||||||
fd = socket (AF_INET, SOCK_STREAM, 0);
|
fd = socket (AF_INET, SOCK_STREAM, 0);
|
||||||
DefineSelf (fd, file, auth);
|
if(fd != -1) {
|
||||||
close (fd);
|
DefineSelf (fd, file, auth);
|
||||||
|
close (fd);
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
#ifdef DNETCONN
|
#ifdef DNETCONN
|
||||||
fd = socket (AF_DECnet, SOCK_STREAM, 0);
|
fd = socket (AF_DECnet, SOCK_STREAM, 0);
|
||||||
|
@ -1156,10 +1158,10 @@ SetUserAuthorization (struct display *d, struct verify_info *verify)
|
||||||
home = getEnv (verify->userEnviron, "HOME");
|
home = getEnv (verify->userEnviron, "HOME");
|
||||||
lockStatus = LOCK_ERROR;
|
lockStatus = LOCK_ERROR;
|
||||||
if (home) {
|
if (home) {
|
||||||
strcpy (home_name, home);
|
snprintf(home_name, sizeof(home_name), "%s", home);
|
||||||
if (home[strlen(home) - 1] != '/')
|
if (home[strlen(home) - 1] != '/')
|
||||||
strcat (home_name, "/");
|
snprintf(home_name, sizeof(home_name), "%s/", home_name);
|
||||||
strcat (home_name, ".Xauthority");
|
snprintf(home_name, sizeof(home_name), "%s.Xauthority", home_name);
|
||||||
Debug ("XauLockAuth %s\n", home_name);
|
Debug ("XauLockAuth %s\n", home_name);
|
||||||
lockStatus = XauLockAuth (home_name, 1, 2, 10);
|
lockStatus = XauLockAuth (home_name, 1, 2, 10);
|
||||||
Debug ("Lock is %d\n", lockStatus);
|
Debug ("Lock is %d\n", lockStatus);
|
||||||
|
@ -1329,10 +1331,10 @@ RemoveUserAuthorization (struct display *d, struct verify_info *verify)
|
||||||
if (!home)
|
if (!home)
|
||||||
return;
|
return;
|
||||||
Debug ("RemoveUserAuthorization\n");
|
Debug ("RemoveUserAuthorization\n");
|
||||||
strcpy (name, home);
|
snprintf(name, sizeof(name), "%s", home);
|
||||||
if (home[strlen(home) - 1] != '/')
|
if (home[strlen(home) - 1] != '/')
|
||||||
strcat (name, "/");
|
snprintf(name, sizeof(name), "%s/", name);
|
||||||
strcat (name, ".Xauthority");
|
snprintf(name, sizeof(name), "%s.Xauthority", name);
|
||||||
Debug ("XauLockAuth %s\n", name);
|
Debug ("XauLockAuth %s\n", name);
|
||||||
lockStatus = XauLockAuth (name, 1, 2, 10);
|
lockStatus = XauLockAuth (name, 1, 2, 10);
|
||||||
Debug ("Lock is %d\n", lockStatus);
|
Debug ("Lock is %d\n", lockStatus);
|
||||||
|
|
|
@ -466,7 +466,7 @@ RunChooser (
|
||||||
env = setEnv(env, LANGLIST, d->langList);
|
env = setEnv(env, LANGLIST, d->langList);
|
||||||
#if !defined (ENABLE_DYNAMIC_LANGLIST)
|
#if !defined (ENABLE_DYNAMIC_LANGLIST)
|
||||||
else
|
else
|
||||||
if (languageList && strlen(languageList) > 0 )
|
if ( strlen(languageList) > 0 )
|
||||||
env = setEnv(env, LANGLIST, languageList);
|
env = setEnv(env, LANGLIST, languageList);
|
||||||
#endif /* ENABLE_DYNAMIC_LANGLIST */
|
#endif /* ENABLE_DYNAMIC_LANGLIST */
|
||||||
if ( d->setup)
|
if ( d->setup)
|
||||||
|
|
|
@ -874,7 +874,7 @@ StartDisplay(
|
||||||
|
|
||||||
bkup[0] = '\0';
|
bkup[0] = '\0';
|
||||||
if (d->authFile)
|
if (d->authFile)
|
||||||
strcpy(bkup ,d->authFile);
|
snprintf(bkup, sizeof(bkup), "%s", d->authFile);
|
||||||
|
|
||||||
LoadDisplayResources (d);
|
LoadDisplayResources (d);
|
||||||
|
|
||||||
|
@ -1340,7 +1340,9 @@ StorePid( void )
|
||||||
* open it Read/Write. This will be transparent to HP-UX.
|
* open it Read/Write. This will be transparent to HP-UX.
|
||||||
*/
|
*/
|
||||||
pidFd = creat (pidFile, 0644);
|
pidFd = creat (pidFile, 0644);
|
||||||
close( pidFd );
|
if(pidFd != -1) {
|
||||||
|
close( pidFd );
|
||||||
|
}
|
||||||
pidFd = open (pidFile, 2);
|
pidFd = open (pidFile, 2);
|
||||||
}
|
}
|
||||||
if (pidFd == -1 || !(pidFilePtr = fdopen (pidFd, "r+")))
|
if (pidFd == -1 || !(pidFilePtr = fdopen (pidFd, "r+")))
|
||||||
|
@ -1623,8 +1625,7 @@ GettyMessage( struct display *d, int msgnum )
|
||||||
|
|
||||||
if (quiet) return;
|
if (quiet) return;
|
||||||
|
|
||||||
strcpy(buf,"/dev/");
|
snprintf(buf, sizeof(buf), "/dev/%s", d->gettyLine);
|
||||||
strcat(buf,d->gettyLine);
|
|
||||||
|
|
||||||
if ( (tf = fopen (buf, "a")) != NULL) {
|
if ( (tf = fopen (buf, "a")) != NULL) {
|
||||||
fprintf (tf,
|
fprintf (tf,
|
||||||
|
|
|
@ -991,7 +991,7 @@ extern char * login_defaults(struct passwd *p,
|
||||||
/******************************* version.c **************************/
|
/******************************* version.c **************************/
|
||||||
/******************************* xdmauth.c **************************/
|
/******************************* xdmauth.c **************************/
|
||||||
#ifdef HASXDMAUTH
|
#ifdef HASXDMAUTH
|
||||||
extern int XdmInitAuth(
|
extern void XdmInitAuth(
|
||||||
#if NeedWidePrototypes
|
#if NeedWidePrototypes
|
||||||
unsigned int name_len,
|
unsigned int name_len,
|
||||||
#else
|
#else
|
||||||
|
|
|
@ -663,7 +663,7 @@ MakeDialog( DialogType dtype )
|
||||||
|
|
||||||
int width;
|
int width;
|
||||||
|
|
||||||
FILE *fp, *fopen();
|
FILE *fp = NULL, *fopen();
|
||||||
char buffer[128];
|
char buffer[128];
|
||||||
char *str;
|
char *str;
|
||||||
|
|
||||||
|
@ -772,7 +772,9 @@ MakeDialog( DialogType dtype )
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fclose(fp);
|
if(fp) {
|
||||||
|
fclose(fp);
|
||||||
|
}
|
||||||
XtSetArg(argt[i], XmNmessageString, xmstr ); i++;
|
XtSetArg(argt[i], XmNmessageString, xmstr ); i++;
|
||||||
|
|
||||||
w = XmCreateInformationDialog(tlev, "copyright_msg", argt, i);
|
w = XmCreateInformationDialog(tlev, "copyright_msg", argt, i);
|
||||||
|
|
|
@ -156,10 +156,8 @@ typedef struct auth_ks_struct { auth_cblock _; } auth_wrapper_schedule[16];
|
||||||
|
|
||||||
extern void _XdmcpWrapperToOddParity();
|
extern void _XdmcpWrapperToOddParity();
|
||||||
|
|
||||||
static
|
static void
|
||||||
longtochars (l, c)
|
longtochars (long l, unsigned char *c)
|
||||||
long l;
|
|
||||||
unsigned char *c;
|
|
||||||
{
|
{
|
||||||
c[0] = (l >> 24) & 0xff;
|
c[0] = (l >> 24) & 0xff;
|
||||||
c[1] = (l >> 16) & 0xff;
|
c[1] = (l >> 16) & 0xff;
|
||||||
|
|
|
@ -739,7 +739,7 @@ LoadAltDtsResources(struct display *d)
|
||||||
if ( XrmGetResource(XresourceDB,
|
if ( XrmGetResource(XresourceDB,
|
||||||
"Dtlogin*altDts", "Dtlogin*AltDts",
|
"Dtlogin*altDts", "Dtlogin*AltDts",
|
||||||
&rmtype, &rmvalue ) ) {
|
&rmtype, &rmvalue ) ) {
|
||||||
strcpy(tempbuf,rmvalue.addr);
|
snprintf(tempbuf, sizeof(tempbuf), "%s", rmvalue.addr);
|
||||||
i = atoi(tempbuf);
|
i = atoi(tempbuf);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -767,18 +767,15 @@ LoadAltDtsResources(struct display *d)
|
||||||
Debug("\t %s.\n", strerror(errno));
|
Debug("\t %s.\n", strerror(errno));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
strcpy(dirname[j], resources);
|
snprintf(dirname[j], sizeof(dirname[j]), "%s", resources);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
strcpy(dirname[j],resources);
|
snprintf(dirname[j], sizeof(dirname[j]), "%s", resources);
|
||||||
Debug("LoadAltDtsResources- found resource dir %s\n", dirname[j]);
|
Debug("LoadAltDtsResources- found resource dir %s\n", dirname[j]);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (resources)
|
free (resources);
|
||||||
{
|
resources = NULL;
|
||||||
free (resources);
|
|
||||||
resources = NULL;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -810,13 +807,13 @@ LoadAltDtsResources(struct display *d)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (file_count == 0) {
|
if (file_count == 0) {
|
||||||
file_list = malloc (list_incr * sizeof(char **));
|
file_list = malloc (list_incr * sizeof(char *));
|
||||||
num_allocated += list_incr;
|
num_allocated += list_incr;
|
||||||
}
|
}
|
||||||
if (file_count + 1 > num_allocated) {
|
if (file_count + 1 > num_allocated) {
|
||||||
num_allocated += list_incr;
|
num_allocated += list_incr;
|
||||||
file_list = realloc (file_list,
|
file_list = realloc (file_list,
|
||||||
num_allocated * sizeof(char **));
|
num_allocated * sizeof(char *));
|
||||||
}
|
}
|
||||||
file_list[file_count] = strdup (res_file);
|
file_list[file_count] = strdup (res_file);
|
||||||
file_count++;
|
file_count++;
|
||||||
|
@ -841,9 +838,9 @@ LoadAltDtsResources(struct display *d)
|
||||||
* remove the trailing spaces
|
* remove the trailing spaces
|
||||||
*/
|
*/
|
||||||
if(strchr(rmvalue.addr,' '))
|
if(strchr(rmvalue.addr,' '))
|
||||||
strcpy(tempbuf, strtok(rmvalue.addr," "));
|
snprintf(tempbuf, sizeof(tempbuf), "%s", strtok(rmvalue.addr," "));
|
||||||
else
|
else
|
||||||
strcpy(tempbuf, rmvalue.addr);
|
snprintf(tempbuf, sizeof(tempbuf), "%s", rmvalue.addr);
|
||||||
|
|
||||||
if ((strcmp(tempbuf, "True") == 0) ||
|
if ((strcmp(tempbuf, "True") == 0) ||
|
||||||
(strcmp(tempbuf, "TRUE") == 0)) {
|
(strcmp(tempbuf, "TRUE") == 0)) {
|
||||||
|
@ -2065,7 +2062,7 @@ RunGreeter( struct display *d, struct greet_info *greet,
|
||||||
if ( d->langList && strlen(d->langList) > 0 )
|
if ( d->langList && strlen(d->langList) > 0 )
|
||||||
env = setEnv(env, LANGLIST, d->langList);
|
env = setEnv(env, LANGLIST, d->langList);
|
||||||
#if !defined (ENABLE_DYNAMIC_LANGLIST)
|
#if !defined (ENABLE_DYNAMIC_LANGLIST)
|
||||||
else if (languageList && strlen(languageList) > 0 )
|
else if (strlen(languageList) > 0 )
|
||||||
env = setEnv(env, LANGLIST, languageList);
|
env = setEnv(env, LANGLIST, languageList);
|
||||||
#endif /* ENABLE_DYNAMIC_LANGLIST */
|
#endif /* ENABLE_DYNAMIC_LANGLIST */
|
||||||
|
|
||||||
|
@ -2129,7 +2126,7 @@ RunGreeter( struct display *d, struct greet_info *greet,
|
||||||
* figure out path to dtgreet...
|
* figure out path to dtgreet...
|
||||||
*/
|
*/
|
||||||
|
|
||||||
strcpy(msg, progName);
|
snprintf(msg, sizeof(msg), "%s", progName);
|
||||||
|
|
||||||
if ((p = (char *) strrchr(msg, '/')) == NULL)
|
if ((p = (char *) strrchr(msg, '/')) == NULL)
|
||||||
strcpy(msg,"./");
|
strcpy(msg,"./");
|
||||||
|
|
|
@ -2471,15 +2471,13 @@ Authenticate( struct display *d, char *name, char *passwd, char **msg )
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
if ((p->pw_gid < 0) ||
|
if (setgid(p->pw_gid) == -1) {
|
||||||
(setgid(p->pw_gid) == -1)) {
|
|
||||||
|
|
||||||
Audit(p, " attempted to login - bad group id", 1);
|
Audit(p, " attempted to login - bad group id", 1);
|
||||||
return(VF_BAD_GID);
|
return(VF_BAD_GID);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((p->pw_uid < 0) ||
|
if (seteuid(p->pw_uid) == -1) {
|
||||||
(seteuid(p->pw_uid) == -1)) {
|
|
||||||
|
|
||||||
Audit(p, " attempted to login - bad user id", 1);
|
Audit(p, " attempted to login - bad user id", 1);
|
||||||
return(VF_BAD_UID);
|
return(VF_BAD_UID);
|
||||||
|
|
|
@ -201,7 +201,7 @@ makeEnv( char *name, char *value )
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (value && *value) {
|
if (*value) {
|
||||||
sprintf (result, "%s=%s", name, value);
|
sprintf (result, "%s=%s", name, value);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
@ -1144,11 +1144,11 @@ setLang( struct display *d, char **env , char *langptr)
|
||||||
Debug("setLang(): langlist = NULL\n");
|
Debug("setLang(): langlist = NULL\n");
|
||||||
|
|
||||||
if (langptr)
|
if (langptr)
|
||||||
strcpy(langlist, langptr);
|
snprintf(langlist, sizeof(langlist), "%s", langptr);
|
||||||
else
|
else
|
||||||
strcpy(langlist, getEnv(env, "LANGLIST"));
|
snprintf(langlist, sizeof(langlist), "%s", getEnv(env, "LANGLIST"));
|
||||||
|
|
||||||
if (langlist && (int) strlen(langlist) > 0) {
|
if (strlen(langlist) > 0) {
|
||||||
element = strtok(langlist, DELIM);
|
element = strtok(langlist, DELIM);
|
||||||
while(element) {
|
while(element) {
|
||||||
set_def_lang = FALSE;
|
set_def_lang = FALSE;
|
||||||
|
|
|
@ -192,8 +192,7 @@ Verify(
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case NOTIFY_LAST_DT:
|
case NOTIFY_LAST_DT:
|
||||||
strcpy(last_sess,home);
|
snprintf(last_sess, sizeof(last_sess), "%s%s", home, LAST_SESSION_FILE);
|
||||||
strcat(last_sess,LAST_SESSION_FILE);
|
|
||||||
|
|
||||||
if((lastsession = fopen(last_sess,"r")) == NULL) {
|
if((lastsession = fopen(last_sess,"r")) == NULL) {
|
||||||
/*
|
/*
|
||||||
|
@ -380,7 +379,7 @@ userEnv(
|
||||||
if (d->language && strlen(d->language) > 0)
|
if (d->language && strlen(d->language) > 0)
|
||||||
langlist = d->language;
|
langlist = d->language;
|
||||||
#else
|
#else
|
||||||
else if (languageList && strlen(languageList) > 0 )
|
else if ( strlen(languageList) > 0 )
|
||||||
langlist = languageList;
|
langlist = languageList;
|
||||||
#endif /* ENABLE_DYNAMIC_LANGLIST */
|
#endif /* ENABLE_DYNAMIC_LANGLIST */
|
||||||
|
|
||||||
|
@ -556,7 +555,7 @@ systemEnv( struct display *d, char *user, char *home )
|
||||||
else if (d->language && strlen(d->language) > 0 )
|
else if (d->language && strlen(d->language) > 0 )
|
||||||
langlist = d->language;
|
langlist = d->language;
|
||||||
#else
|
#else
|
||||||
else if (languageList && strlen(languageList) > 0 )
|
else if ( strlen(languageList) > 0 )
|
||||||
langlist = languageList;
|
langlist = languageList;
|
||||||
#endif /* ENABLE_DYNAMIC_LANGLIST */
|
#endif /* ENABLE_DYNAMIC_LANGLIST */
|
||||||
|
|
||||||
|
|
|
@ -448,7 +448,7 @@ EditPasswdCB(Widget w, XtPointer client, XtPointer call_data)
|
||||||
|
|
||||||
if (cbs->text->ptr)
|
if (cbs->text->ptr)
|
||||||
{
|
{
|
||||||
strcpy(s, cbs->text->ptr);
|
snprintf(s, sizeof(buffer) - (s - buffer), "%s", cbs->text->ptr);
|
||||||
s += cbs->text->length;
|
s += cbs->text->length;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -1501,8 +1501,7 @@ RespondLangCB( Widget w, XtPointer client, XtPointer call)
|
||||||
/** beginning of main. **/
|
/** beginning of main. **/
|
||||||
char buff[128];
|
char buff[128];
|
||||||
if (XmToggleButtonGadgetGetState(w)) {
|
if (XmToggleButtonGadgetGetState(w)) {
|
||||||
strcpy(buff, "LANG=");
|
snprintf(buff, sizeof(buff), "LANG=%s", (char *) client);
|
||||||
strcat(buff, client);
|
|
||||||
putenv(buff);
|
putenv(buff);
|
||||||
execv(orig_argv[0], orig_argv);
|
execv(orig_argv[0], orig_argv);
|
||||||
}
|
}
|
||||||
|
|
|
@ -960,9 +960,7 @@ char *temp_p;
|
||||||
char *host;
|
char *host;
|
||||||
|
|
||||||
host = GetDisplayName();
|
host = GetDisplayName();
|
||||||
strcpy(temp, host);
|
snprintf(temp, sizeof(temp), "%s - %s", host, rmvalue.addr + strlen(DISPLAYNAME));
|
||||||
strcat(temp, " - ");
|
|
||||||
strcat(temp, rmvalue.addr + strlen(DISPLAYNAME));
|
|
||||||
xmstr = XmStringCreateLocalized(temp);
|
xmstr = XmStringCreateLocalized(temp);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
|
|
@ -94,10 +94,8 @@ from the X Consortium.
|
||||||
static char auth_name[256];
|
static char auth_name[256];
|
||||||
static int auth_name_len;
|
static int auth_name_len;
|
||||||
|
|
||||||
XdmPrintDataHex (s, a, l)
|
void
|
||||||
char *s;
|
XdmPrintDataHex(const char *s, const char *a, int l)
|
||||||
char *a;
|
|
||||||
int l;
|
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
|
@ -117,14 +115,14 @@ XdmPrintKey (s, k)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef XDMCP
|
#ifdef XDMCP
|
||||||
XdmPrintArray8Hex (s, a)
|
void
|
||||||
char *s;
|
XdmPrintArray8Hex(const char *s, ARRAY8Ptr a)
|
||||||
ARRAY8Ptr a;
|
|
||||||
{
|
{
|
||||||
XdmPrintDataHex (s, (char *) a->data, a->length);
|
XdmPrintDataHex (s, (char *) a->data, a->length);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
void
|
||||||
XdmInitAuth (name_len, name)
|
XdmInitAuth (name_len, name)
|
||||||
#if NeedWidePrototypes
|
#if NeedWidePrototypes
|
||||||
unsigned int name_len;
|
unsigned int name_len;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue