mirror of
https://github.com/sheumann/hush.git
synced 2024-12-23 20:29:42 +00:00
Move stpcpy replacement function into libbb
Signed-off-by: Dan Fandrich <dan@coneharvesters.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
parent
4ed3c52ce9
commit
dc50676cce
@ -18,6 +18,7 @@
|
|||||||
#define HAVE_PTSNAME_R 1
|
#define HAVE_PTSNAME_R 1
|
||||||
#define HAVE_SETBIT 1
|
#define HAVE_SETBIT 1
|
||||||
#define HAVE_SIGHANDLER_T 1
|
#define HAVE_SIGHANDLER_T 1
|
||||||
|
#define HAVE_STPCPY 1
|
||||||
#define HAVE_STRCASESTR 1
|
#define HAVE_STRCASESTR 1
|
||||||
#define HAVE_STRCHRNUL 1
|
#define HAVE_STRCHRNUL 1
|
||||||
#define HAVE_STRSEP 1
|
#define HAVE_STRSEP 1
|
||||||
@ -356,6 +357,8 @@ typedef unsigned smalluint;
|
|||||||
# define ADJ_TICK MOD_CLKB
|
# define ADJ_TICK MOD_CLKB
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
|
# undef HAVE_STPCPY
|
||||||
|
|
||||||
#else
|
#else
|
||||||
|
|
||||||
# define bb_setpgrp() setpgrp()
|
# define bb_setpgrp() setpgrp()
|
||||||
@ -376,6 +379,7 @@ typedef unsigned smalluint;
|
|||||||
# undef HAVE_MEMRCHR
|
# undef HAVE_MEMRCHR
|
||||||
# undef HAVE_MKDTEMP
|
# undef HAVE_MKDTEMP
|
||||||
# undef HAVE_SETBIT
|
# undef HAVE_SETBIT
|
||||||
|
# undef HAVE_STPCPY
|
||||||
# undef HAVE_STRCASESTR
|
# undef HAVE_STRCASESTR
|
||||||
# undef HAVE_STRCHRNUL
|
# undef HAVE_STRCHRNUL
|
||||||
# undef HAVE_STRSEP
|
# undef HAVE_STRSEP
|
||||||
@ -413,6 +417,10 @@ extern char *mkdtemp(char *template) FAST_FUNC;
|
|||||||
typedef void (*sighandler_t)(int);
|
typedef void (*sighandler_t)(int);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef HAVE_STPCPY
|
||||||
|
extern char *stpcpy(char *p, const char *to_add) FAST_FUNC;
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifndef HAVE_STRCASESTR
|
#ifndef HAVE_STRCASESTR
|
||||||
extern char *strcasestr(const char *s, const char *pattern) FAST_FUNC;
|
extern char *strcasestr(const char *s, const char *pattern) FAST_FUNC;
|
||||||
#endif
|
#endif
|
||||||
|
@ -134,3 +134,14 @@ char* FAST_FUNC strsep(char **stringp, const char *delim)
|
|||||||
return start;
|
return start;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef HAVE_STPCPY
|
||||||
|
char* FAST_FUNC stpcpy(char *p, const char *to_add)
|
||||||
|
{
|
||||||
|
while ((*p = *to_add) != '\0') {
|
||||||
|
p++;
|
||||||
|
to_add++;
|
||||||
|
}
|
||||||
|
return p;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
@ -139,16 +139,6 @@ static void s_term(int sig_no UNUSED_PARAM)
|
|||||||
write(selfpipe.wr, "", 1); /* XXX */
|
write(selfpipe.wr, "", 1); /* XXX */
|
||||||
}
|
}
|
||||||
|
|
||||||
/* libbb candidate */
|
|
||||||
static char *bb_stpcpy(char *p, const char *to_add)
|
|
||||||
{
|
|
||||||
while ((*p = *to_add) != '\0') {
|
|
||||||
p++;
|
|
||||||
to_add++;
|
|
||||||
}
|
|
||||||
return p;
|
|
||||||
}
|
|
||||||
|
|
||||||
static int open_trunc_or_warn(const char *name)
|
static int open_trunc_or_warn(const char *name)
|
||||||
{
|
{
|
||||||
/* Why O_NDELAY? */
|
/* Why O_NDELAY? */
|
||||||
@ -192,26 +182,26 @@ static void update_status(struct svdir *s)
|
|||||||
char *p = stat_buf;
|
char *p = stat_buf;
|
||||||
switch (s->state) {
|
switch (s->state) {
|
||||||
case S_DOWN:
|
case S_DOWN:
|
||||||
p = bb_stpcpy(p, "down");
|
p = stpcpy(p, "down");
|
||||||
break;
|
break;
|
||||||
case S_RUN:
|
case S_RUN:
|
||||||
p = bb_stpcpy(p, "run");
|
p = stpcpy(p, "run");
|
||||||
break;
|
break;
|
||||||
case S_FINISH:
|
case S_FINISH:
|
||||||
p = bb_stpcpy(p, "finish");
|
p = stpcpy(p, "finish");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (s->ctrl & C_PAUSE)
|
if (s->ctrl & C_PAUSE)
|
||||||
p = bb_stpcpy(p, ", paused");
|
p = stpcpy(p, ", paused");
|
||||||
if (s->ctrl & C_TERM)
|
if (s->ctrl & C_TERM)
|
||||||
p = bb_stpcpy(p, ", got TERM");
|
p = stpcpy(p, ", got TERM");
|
||||||
if (s->state != S_DOWN)
|
if (s->state != S_DOWN)
|
||||||
switch (s->sd_want) {
|
switch (s->sd_want) {
|
||||||
case W_DOWN:
|
case W_DOWN:
|
||||||
p = bb_stpcpy(p, ", want down");
|
p = stpcpy(p, ", want down");
|
||||||
break;
|
break;
|
||||||
case W_EXIT:
|
case W_EXIT:
|
||||||
p = bb_stpcpy(p, ", want exit");
|
p = stpcpy(p, ", want exit");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
*p++ = '\n';
|
*p++ = '\n';
|
||||||
|
Loading…
Reference in New Issue
Block a user