Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OP-TEE
busybox
提交
92e53145
B
busybox
项目概览
OP-TEE
/
busybox
通知
0
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
B
busybox
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
92e53145
编写于
2月 08, 2011
作者:
D
Denys Vlasenko
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Apply post-1.18.2 fixes, bump version to 1.18.3
Signed-off-by:
N
Denys Vlasenko
<
vda.linux@googlemail.com
>
上级
12d97b66
变更
12
隐藏空白更改
内联
并排
Showing
12 changed file
with
40 addition
and
31 deletion
+40
-31
Makefile
Makefile
+1
-1
archival/tar.c
archival/tar.c
+4
-2
coreutils/wc.c
coreutils/wc.c
+8
-8
libbb/vfork_daemon_rexec.c
libbb/vfork_daemon_rexec.c
+1
-0
loginutils/Config.src
loginutils/Config.src
+0
-4
miscutils/Config.src
miscutils/Config.src
+0
-1
modutils/modprobe-small.c
modutils/modprobe-small.c
+3
-0
modutils/modutils.c
modutils/modutils.c
+5
-6
networking/ping.c
networking/ping.c
+1
-1
networking/udhcp/common.c
networking/udhcp/common.c
+1
-1
shell/hush.c
shell/hush.c
+16
-5
util-linux/Config.src
util-linux/Config.src
+0
-2
未找到文件。
Makefile
浏览文件 @
92e53145
VERSION
=
1
PATCHLEVEL
=
18
SUBLEVEL
=
2
SUBLEVEL
=
3
EXTRAVERSION
=
NAME
=
Unnamed
...
...
archival/tar.c
浏览文件 @
92e53145
...
...
@@ -1037,8 +1037,10 @@ int tar_main(int argc UNUSED_PARAM, char **argv)
tar_handle
->
src_fd
=
tar_fd
;
tar_handle
->
seek
=
seek_by_read
;
}
else
{
if
(
ENABLE_FEATURE_TAR_AUTODETECT
&&
flags
==
O_RDONLY
)
{
get_header_ptr
=
get_header_tar
;
if
(
ENABLE_FEATURE_TAR_AUTODETECT
&&
flags
==
O_RDONLY
&&
get_header_ptr
==
get_header_tar
)
{
tar_handle
->
src_fd
=
open_zipped
(
tar_filename
);
if
(
tar_handle
->
src_fd
<
0
)
bb_perror_msg_and_die
(
"can't open '%s'"
,
tar_filename
);
...
...
coreutils/wc.c
浏览文件 @
92e53145
...
...
@@ -81,11 +81,11 @@
* column order in "wc -cmlwL" output:
*/
enum
{
WC_LINES
=
0
,
WC_WORDS
=
1
,
WC_UNICHARS
=
2
,
WC_
CHARS
=
3
,
WC_LENGTH
=
4
,
WC_LINES
=
0
,
/* -l */
WC_WORDS
=
1
,
/* -w */
WC_UNICHARS
=
2
,
/* -m */
WC_
BYTES
=
3
,
/* -c */
WC_LENGTH
=
4
,
/* -L */
NUM_WCS
=
5
,
};
...
...
@@ -104,10 +104,10 @@ int wc_main(int argc UNUSED_PARAM, char **argv)
init_unicode
();
print_type
=
getopt32
(
argv
,
"lw
cm
L"
);
print_type
=
getopt32
(
argv
,
"lw
mc
L"
);
if
(
print_type
==
0
)
{
print_type
=
(
1
<<
WC_LINES
)
|
(
1
<<
WC_WORDS
)
|
(
1
<<
WC_
CHAR
S
);
print_type
=
(
1
<<
WC_LINES
)
|
(
1
<<
WC_WORDS
)
|
(
1
<<
WC_
BYTE
S
);
}
argv
+=
optind
;
...
...
@@ -157,7 +157,7 @@ int wc_main(int argc UNUSED_PARAM, char **argv)
}
/* Cater for -c and -m */
++
counts
[
WC_
CHAR
S
];
++
counts
[
WC_
BYTE
S
];
if
(
unicode_status
!=
UNICODE_ON
/* every byte is a new char */
||
(
c
&
0xc0
)
!=
0x80
/* it isn't a 2nd+ byte of a Unicode char */
)
{
...
...
libbb/vfork_daemon_rexec.c
浏览文件 @
92e53145
...
...
@@ -52,6 +52,7 @@ pid_t FAST_FUNC spawn(char **argv)
* Interested party can wait on pid and learn exit code.
* If 111 - then it (most probably) failed to exec */
if
(
failed
)
{
safe_waitpid
(
pid
,
NULL
,
0
);
/* prevent zombie */
errno
=
failed
;
return
-
1
;
}
...
...
loginutils/Config.src
浏览文件 @
92e53145
...
...
@@ -186,7 +186,6 @@ config GETTY
config LOGIN
bool "login"
default y
select FEATURE_SUID
select FEATURE_SYSLOG
help
login is used when signing onto a system.
...
...
@@ -229,7 +228,6 @@ config FEATURE_SECURETTY
config PASSWD
bool "passwd"
default y
select FEATURE_SUID
select FEATURE_SYSLOG
help
passwd changes passwords for user and group accounts. A normal user
...
...
@@ -265,7 +263,6 @@ config CHPASSWD
config SU
bool "su"
default y
select FEATURE_SUID
select FEATURE_SYSLOG
help
su is used to become another user during a login session.
...
...
@@ -295,7 +292,6 @@ config SULOGIN
config VLOCK
bool "vlock"
default y
select FEATURE_SUID
help
Build the "vlock" applet which allows you to lock (virtual) terminals.
...
...
miscutils/Config.src
浏览文件 @
92e53145
...
...
@@ -170,7 +170,6 @@ config FEATURE_CROND_DIR
config CRONTAB
bool "crontab"
default y
select FEATURE_SUID
help
Crontab manipulates the crontab for a particular user. Only
the superuser may specify a different user and/or crontab directory.
...
...
modutils/modprobe-small.c
浏览文件 @
92e53145
...
...
@@ -205,6 +205,7 @@ static void parse_module(module_info *info, const char *pathname)
/* Read (possibly compressed) module */
len
=
64
*
1024
*
1024
;
/* 64 Mb at most */
module_image
=
xmalloc_open_zipped_read_close
(
pathname
,
&
len
);
/* module_image == NULL is ok here, find_keyword handles it */
//TODO: optimize redundant module body reads
/* "alias1 symbol:sym1 alias2 symbol:sym2" */
...
...
@@ -845,6 +846,8 @@ int modprobe_main(int argc UNUSED_PARAM, char **argv)
len
=
MAXINT
(
ssize_t
);
map
=
xmalloc_open_zipped_read_close
(
*
argv
,
&
len
);
if
(
!
map
)
bb_perror_msg_and_die
(
"can't read '%s'"
,
*
argv
);
if
(
init_module
(
map
,
len
,
IF_FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE
(
options
?
options
:
""
)
IF_NOT_FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE
(
""
)
...
...
modutils/modutils.c
浏览文件 @
92e53145
...
...
@@ -71,12 +71,11 @@ char* FAST_FUNC parse_cmdline_module_options(char **argv)
optlen
=
0
;
while
(
*++
argv
)
{
options
=
xrealloc
(
options
,
optlen
+
2
+
strlen
(
*
argv
)
+
2
);
/* Older versions were enclosing space-containing *argv in "",
* but both modprobe and insmod from module-init-tools 3.11.1
* don't do this anymore. (As to extra trailing space,
* insmod adds it but modprobe does not. We do in both cases)
*/
optlen
+=
sprintf
(
options
+
optlen
,
"%s "
,
*
argv
);
/* Spaces handled by "" pairs, but no way of escaping quotes */
//TODO: module-init-tools version 3.11.1 quotes only value:
//it generates var="val with spaces", not "var=val with spaces"
//(and it won't quote var *name* even if it has spaces)
optlen
+=
sprintf
(
options
+
optlen
,
(
strchr
(
*
argv
,
' '
)
?
"
\"
%s
\"
"
:
"%s "
),
*
argv
);
}
return
options
;
}
...
...
networking/ping.c
浏览文件 @
92e53145
...
...
@@ -394,7 +394,7 @@ static void sendping4(int junk UNUSED_PARAM)
#if ENABLE_PING6
static
void
sendping6
(
int
junk
UNUSED_PARAM
)
{
struct
icmp6_hdr
*
pkt
=
alloca
(
datalen
+
sizeof
(
struct
icmp6_hdr
)
+
4
)
;
struct
icmp6_hdr
*
pkt
=
G
.
snd_packet
;
//memset(pkt, 0, datalen + sizeof(struct icmp6_hdr) + 4);
pkt
->
icmp6_type
=
ICMP6_ECHO_REQUEST
;
...
...
networking/udhcp/common.c
浏览文件 @
92e53145
...
...
@@ -375,7 +375,7 @@ static NOINLINE void attach_option(
new
->
data
=
xmalloc
(
length
+
OPT_DATA
);
new
->
data
[
OPT_CODE
]
=
optflag
->
code
;
new
->
data
[
OPT_LEN
]
=
length
;
memcpy
(
new
->
data
+
OPT_DATA
,
buffer
,
length
);
memcpy
(
new
->
data
+
OPT_DATA
,
(
allocated
?
allocated
:
buffer
)
,
length
);
curr
=
opt_list
;
while
(
*
curr
&&
(
*
curr
)
->
data
[
OPT_CODE
]
<
optflag
->
code
)
...
...
shell/hush.c
浏览文件 @
92e53145
...
...
@@ -4123,15 +4123,26 @@ static struct pipe *parse_stream(char **pstring,
&&
dest
.
length
==
0
&&
!
dest
.
has_quoted_part
)
{
/* This newline can be ignored. But...
*
without the below check
, interactive shell
*
will ignore even lines with
bare <newline>,
* and show the continuation prompt:
*
Without check #1
, interactive shell
*
ignores even
bare <newline>,
* and show
s
the continuation prompt:
* ps1_prompt$ <enter>
* ps2> _ <=== wrong prompt, should be ps1
* ps2> _ <=== wrong, should be ps1
* Without check #2, "cmd & <newline>"
* is similarly mistreated.
* (BTW, this makes "cmd & cmd"
* and "cmd && cmd" non-orthogonal.
* Really, ask yourself, why
* "cmd && <newline>" doesn't start
* cmd but waits for more input?
* No reason...)
*/
struct
pipe
*
pi
=
ctx
.
list_head
;
if
(
pi
->
num_cmds
!=
0
)
if
(
pi
->
num_cmds
!=
0
/* check #1 */
&&
pi
->
followup
!=
PIPE_BG
/* check #2 */
)
{
continue
;
}
}
/* Treat newline as a command separator. */
done_pipe
(
&
ctx
,
PIPE_SEQ
);
...
...
util-linux/Config.src
浏览文件 @
92e53145
...
...
@@ -354,7 +354,6 @@ config FEATURE_HWCLOCK_ADJTIME_FHS
config IPCRM
bool "ipcrm"
default y
select FEATURE_SUID
help
The ipcrm utility allows the removal of System V interprocess
communication (IPC) objects and the associated data structures
...
...
@@ -364,7 +363,6 @@ config IPCS
bool "ipcs"
default y
depends on PLATFORM_LINUX
select FEATURE_SUID
help
The ipcs utility is used to provide information on the currently
allocated System V interprocess (IPC) objects in the system.
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录