fixes revealed by randomconfig run

This commit is contained in:
Denis Vlasenko 2007-10-16 22:53:05 +00:00
parent 23c8128916
commit 5576136563
3 changed files with 14 additions and 10 deletions

View File

@ -119,6 +119,7 @@ static const char *human_fstype(uint32_t f_type)
return humantypes[i].fs;
}
#if ENABLE_FEATURE_STAT_FORMAT
static void strcatc(char *str, char c)
{
int len = strlen(str);
@ -132,7 +133,6 @@ static void printfs(char *pformat, const char *msg)
printf(pformat, msg);
}
#if ENABLE_FEATURE_STAT_FORMAT
/* print statfs info */
static void print_statfs(char *pformat, const char m,
const char *const filename, const void *data

View File

@ -492,7 +492,11 @@ int telnetd_main(int argc, char **argv)
while (ts) {
struct tsession *next = ts->next; /* in case we free ts. */
if (ts->shell_pid == -1) {
#if !ENABLE_FEATURE_TELNETD_STANDALONE
return 0;
#else
free_session(ts);
#endif
} else {
if (ts->size1 > 0) /* can write to pty */
FD_SET(ts->ptyfd, &wrfdset);
@ -552,8 +556,6 @@ int telnetd_main(int argc, char **argv)
if (count < 0) {
if (errno == EAGAIN)
goto skip1;
if (IS_INETD)
return 0;
goto kill_session;
}
ts->size1 -= count;
@ -569,8 +571,6 @@ int telnetd_main(int argc, char **argv)
if (count < 0) {
if (errno == EAGAIN)
goto skip2;
if (IS_INETD)
return 0;
goto kill_session;
}
ts->size2 -= count;
@ -601,8 +601,6 @@ int telnetd_main(int argc, char **argv)
if (count <= 0) {
if (count < 0 && errno == EAGAIN)
goto skip3;
if (IS_INETD)
return 0;
goto kill_session;
}
/* Ignore trailing NUL if it is there */
@ -622,8 +620,6 @@ int telnetd_main(int argc, char **argv)
if (count <= 0) {
if (count < 0 && errno == EAGAIN)
goto skip4;
if (IS_INETD)
return 0;
goto kill_session;
}
ts->size2 += count;
@ -635,8 +631,14 @@ int telnetd_main(int argc, char **argv)
ts = next;
continue;
kill_session:
#if !ENABLE_FEATURE_TELNETD_STANDALONE
return 0;
#else
if (IS_INETD)
return 0;
free_session(ts);
ts = next;
#endif
}
goto again;

View File

@ -82,10 +82,12 @@ struct globals {
/* int hist_iterations; */
unsigned total_pcpu;
/* unsigned long total_vsz; */
char line_buf[80];
#endif
char line_buf[80];
};
enum { LINE_BUF_SIZE = COMMON_BUFSIZE - offsetof(struct globals, line_buf) };
#define G (*(struct globals*)&bb_common_bufsiz1)
#define INIT_G() \
do { \