1/* vi: set sw=4 ts=4: */ 2/* 3 * Copyright (C) 1999-2004 by Erik Andersen <andersen@codepoet.org> 4 * 5 * Licensed under GPLv2 or later, see file LICENSE in this tarball for details. 6 */ 7 8#include "libbb.h" 9 10#ifndef BB_EXTRA_VERSION 11#define BANNER "BusyBox v" BB_VER " (" BB_BT ")" 12#else 13#define BANNER "BusyBox v" BB_VER " (" BB_EXTRA_VERSION ")" 14#endif 15const char bb_banner[] ALIGN1 = BANNER; 16 17const char bb_msg_memory_exhausted[] ALIGN1 = "memory exhausted"; 18const char bb_msg_invalid_date[] ALIGN1 = "invalid date '%s'"; 19const char bb_msg_write_error[] ALIGN1 = "write error"; 20const char bb_msg_read_error[] ALIGN1 = "read error"; 21const char bb_msg_unknown[] ALIGN1 = "(unknown)"; 22const char bb_msg_can_not_create_raw_socket[] ALIGN1 = "can't create raw socket"; 23const char bb_msg_perm_denied_are_you_root[] ALIGN1 = "permission denied. (are you root?)"; 24const char bb_msg_requires_arg[] ALIGN1 = "%s requires an argument"; 25const char bb_msg_invalid_arg[] ALIGN1 = "invalid argument '%s' to '%s'"; 26const char bb_msg_standard_input[] ALIGN1 = "standard input"; 27const char bb_msg_standard_output[] ALIGN1 = "standard output"; 28 29const char bb_str_default[] ALIGN1 = "default"; 30const char bb_hexdigits_upcase[] ALIGN1 = "0123456789ABCDEF"; 31 32const char bb_path_passwd_file[] ALIGN1 = "/etc/passwd"; 33const char bb_path_shadow_file[] ALIGN1 = "/etc/shadow"; 34const char bb_path_group_file[] ALIGN1 = "/etc/group"; 35const char bb_path_gshadow_file[] ALIGN1 = "/etc/gshadow"; 36const char bb_path_motd_file[] ALIGN1 = "/etc/motd"; 37const char bb_dev_null[] ALIGN1 = "/dev/null"; 38const char bb_busybox_exec_path[] ALIGN1 = CONFIG_BUSYBOX_EXEC_PATH; 39const char bb_default_login_shell[] ALIGN1 = LIBBB_DEFAULT_LOGIN_SHELL; 40/* util-linux manpage says /sbin:/bin:/usr/sbin:/usr/bin, 41 * but I want to save a few bytes here. Check libbb.h before changing! */ 42const char bb_PATH_root_path[] ALIGN1 = "PATH=/sbin:/usr/sbin:/bin:/usr/bin"; 43 44 45const int const_int_0; 46const int const_int_1 = 1; 47 48#include <utmp.h> 49/* This is usually something like "/var/adm/wtmp" or "/var/log/wtmp" */ 50const char bb_path_wtmp_file[] ALIGN1 = 51#if defined _PATH_WTMP 52_PATH_WTMP; 53#elif defined WTMP_FILE 54WTMP_FILE; 55#else 56# error unknown path to wtmp file 57#endif 58 59char bb_common_bufsiz1[COMMON_BUFSIZE]; 60 61struct globals; 62/* Make it reside in R/W memory: */ 63struct globals *const ptr_to_globals __attribute__ ((section (".data"))); 64