Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Open sidebar
halo
system_extras
Commits
b317b33a
Commit
b317b33a
authored
9 years ago
by
Mohamad Ayyash
Committed by
Android (Google) Code Review
9 years ago
Browse files
Options
Download
Plain Diff
Merge "Remove canned_fs_config from ext4_utils" into nyc-dev
parents
a8be0cf6
aa8b3553
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
13 additions
and
146 deletions
+13
-146
ext4_utils/Android.mk
ext4_utils/Android.mk
+2
-2
ext4_utils/canned_fs_config.c
ext4_utils/canned_fs_config.c
+0
-116
ext4_utils/canned_fs_config.h
ext4_utils/canned_fs_config.h
+0
-26
ext4_utils/make_ext4fs_main.c
ext4_utils/make_ext4fs_main.c
+1
-1
squashfs_utils/mksquashfsimage.sh
squashfs_utils/mksquashfsimage.sh
+10
-1
No files found.
ext4_utils/Android.mk
View file @
b317b33a
...
...
@@ -34,7 +34,7 @@ include $(BUILD_HOST_STATIC_LIBRARY)
include
$(CLEAR_VARS)
LOCAL_SRC_FILES
:=
make_ext4fs_main.c
canned_fs_config.c
LOCAL_SRC_FILES
:=
make_ext4fs_main.c
LOCAL_MODULE
:=
make_ext4fs
LOCAL_SHARED_LIBRARIES
+=
libcutils
LOCAL_STATIC_LIBRARIES
+=
\
...
...
@@ -99,7 +99,7 @@ include $(BUILD_STATIC_LIBRARY)
include
$(CLEAR_VARS)
LOCAL_SRC_FILES
:=
make_ext4fs_main.c
canned_fs_config.c
LOCAL_SRC_FILES
:=
make_ext4fs_main.c
LOCAL_MODULE
:=
make_ext4fs
LOCAL_SHARED_LIBRARIES
:=
\
libcutils
\
...
...
This diff is collapsed.
Click to expand it.
ext4_utils/canned_fs_config.c
deleted
100644 → 0
View file @
a8be0cf6
/*
* Copyright (C) 2014 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include <inttypes.h>
#include <stdio.h>
#include <string.h>
#include <errno.h>
#include <limits.h>
#include <stdlib.h>
#include "private/android_filesystem_config.h"
#include "canned_fs_config.h"
typedef
struct
{
const
char
*
path
;
unsigned
uid
;
unsigned
gid
;
unsigned
mode
;
uint64_t
capabilities
;
}
Path
;
static
Path
*
canned_data
=
NULL
;
static
int
canned_alloc
=
0
;
static
int
canned_used
=
0
;
static
int
path_compare
(
const
void
*
a
,
const
void
*
b
)
{
return
strcmp
(((
Path
*
)
a
)
->
path
,
((
Path
*
)
b
)
->
path
);
}
int
load_canned_fs_config
(
const
char
*
fn
)
{
FILE
*
f
=
fopen
(
fn
,
"r"
);
if
(
f
==
NULL
)
{
fprintf
(
stderr
,
"failed to open %s: %s
\n
"
,
fn
,
strerror
(
errno
));
return
-
1
;
}
char
line
[
PATH_MAX
+
200
];
while
(
fgets
(
line
,
sizeof
(
line
),
f
))
{
while
(
canned_used
>=
canned_alloc
)
{
canned_alloc
=
(
canned_alloc
+
1
)
*
2
;
canned_data
=
(
Path
*
)
realloc
(
canned_data
,
canned_alloc
*
sizeof
(
Path
));
}
Path
*
p
=
canned_data
+
canned_used
;
p
->
path
=
strdup
(
strtok
(
line
,
" "
));
p
->
uid
=
atoi
(
strtok
(
NULL
,
" "
));
p
->
gid
=
atoi
(
strtok
(
NULL
,
" "
));
p
->
mode
=
strtol
(
strtok
(
NULL
,
" "
),
NULL
,
8
);
// mode is in octal
p
->
capabilities
=
0
;
char
*
token
=
NULL
;
do
{
token
=
strtok
(
NULL
,
" "
);
if
(
token
&&
strncmp
(
token
,
"capabilities="
,
13
)
==
0
)
{
p
->
capabilities
=
strtoll
(
token
+
13
,
NULL
,
0
);
break
;
}
}
while
(
token
);
canned_used
++
;
}
fclose
(
f
);
qsort
(
canned_data
,
canned_used
,
sizeof
(
Path
),
path_compare
);
printf
(
"loaded %d fs_config entries
\n
"
,
canned_used
);
return
0
;
}
static
const
int
kDebugCannedFsConfig
=
0
;
void
canned_fs_config
(
const
char
*
path
,
int
dir
,
const
char
*
target_out_path
,
unsigned
*
uid
,
unsigned
*
gid
,
unsigned
*
mode
,
uint64_t
*
capabilities
)
{
Path
key
;
key
.
path
=
path
+
1
;
// canned paths lack the leading '/'
Path
*
p
=
(
Path
*
)
bsearch
(
&
key
,
canned_data
,
canned_used
,
sizeof
(
Path
),
path_compare
);
if
(
p
==
NULL
)
{
fprintf
(
stderr
,
"failed to find [%s] in canned fs_config
\n
"
,
path
);
exit
(
1
);
}
*
uid
=
p
->
uid
;
*
gid
=
p
->
gid
;
*
mode
=
p
->
mode
;
*
capabilities
=
p
->
capabilities
;
if
(
kDebugCannedFsConfig
)
{
// for debugging, run the built-in fs_config and compare the results.
unsigned
c_uid
,
c_gid
,
c_mode
;
uint64_t
c_capabilities
;
fs_config
(
path
,
dir
,
target_out_path
,
&
c_uid
,
&
c_gid
,
&
c_mode
,
&
c_capabilities
);
if
(
c_uid
!=
*
uid
)
printf
(
"%s uid %d %d
\n
"
,
path
,
*
uid
,
c_uid
);
if
(
c_gid
!=
*
gid
)
printf
(
"%s gid %d %d
\n
"
,
path
,
*
gid
,
c_gid
);
if
(
c_mode
!=
*
mode
)
printf
(
"%s mode 0%o 0%o
\n
"
,
path
,
*
mode
,
c_mode
);
if
(
c_capabilities
!=
*
capabilities
)
printf
(
"%s capabilities %"
PRIx64
" %"
PRIx64
"
\n
"
,
path
,
*
capabilities
,
c_capabilities
);
}
}
This diff is collapsed.
Click to expand it.
ext4_utils/canned_fs_config.h
deleted
100644 → 0
View file @
a8be0cf6
/*
* Copyright (C) 2014 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef _CANNED_FS_CONFIG_H
#define _CANNED_FS_CONFIG_H
#include <inttypes.h>
int
load_canned_fs_config
(
const
char
*
fn
);
void
canned_fs_config
(
const
char
*
path
,
int
dir
,
const
char
*
target_out_path
,
unsigned
*
uid
,
unsigned
*
gid
,
unsigned
*
mode
,
uint64_t
*
capabilities
);
#endif
This diff is collapsed.
Click to expand it.
ext4_utils/make_ext4fs_main.c
View file @
b317b33a
...
...
@@ -27,6 +27,7 @@
#ifdef ANDROID
#include <private/android_filesystem_config.h>
#include <private/canned_fs_config.h>
#endif
#ifndef USE_MINGW
...
...
@@ -41,7 +42,6 @@ struct selabel_handle;
#include "make_ext4fs.h"
#include "ext4_utils.h"
#include "canned_fs_config.h"
#ifndef USE_MINGW
/* O_BINARY is windows-specific flag */
#define O_BINARY 0
...
...
This diff is collapsed.
Click to expand it.
squashfs_utils/mksquashfsimage.sh
View file @
b317b33a
...
...
@@ -5,7 +5,7 @@
function
usage
()
{
cat
<<
EOT
Usage:
${
0
##*/
}
SRC_DIR OUTPUT_FILE [-s] [-m MOUNT_POINT] [-d PRODUCT_OUT] [-c FILE_CONTEXTS] [-b BLOCK_SIZE] [-z COMPRESSOR] [-zo COMPRESSOR_OPT]
${
0
##*/
}
SRC_DIR OUTPUT_FILE [-s] [-m MOUNT_POINT] [-d PRODUCT_OUT]
[-C FS_CONFIG ]
[-c FILE_CONTEXTS] [-b BLOCK_SIZE] [-z COMPRESSOR] [-zo COMPRESSOR_OPT]
EOT
}
...
...
@@ -42,6 +42,12 @@ if [[ "$1" == "-d" ]]; then
shift
;
shift
fi
FS_CONFIG
=
if
[[
"
$1
"
==
"-C"
]]
;
then
FS_CONFIG
=
$2
shift
;
shift
fi
FILE_CONTEXTS
=
if
[[
"
$1
"
==
"-c"
]]
;
then
FILE_CONTEXTS
=
$2
...
...
@@ -74,6 +80,9 @@ fi
if
[
-n
"
$PRODUCT_OUT
"
]
;
then
OPT
=
"
$OPT
-product-out
$PRODUCT_OUT
"
fi
if
[
-n
"
$FS_CONFIG
"
]
;
then
OPT
=
"
$OPT
-fs-config-file
$FS_CONFIG
"
fi
if
[
-n
"
$FILE_CONTEXTS
"
]
;
then
OPT
=
"
$OPT
-context-file
$FILE_CONTEXTS
"
fi
...
...
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment