mirror of
https://gitee.com/wanghongenpin/Magisk-ProxyPinCA.git
synced 2026-03-16 03:13:17 +08:00
39 lines
1.3 KiB
Bash
39 lines
1.3 KiB
Bash
#!/system/bin/sh
|
|
|
|
if [ -d /apex/com.android.conscrypt/cacerts ]; then
|
|
# 检测到 android 14 以上,存在该证书目录
|
|
CERT_HASH=243f0bfb
|
|
MODDIR=${0%/*}
|
|
NEW_CERT_FILE=${MODDIR}/system/etc/security/cacerts/${CERT_HASH}.0
|
|
LOG_PATH="/cache/ProxyPinCA.log"
|
|
echo "Found /apex/com.android.conscrypt/cacerts." >> ${LOG_PATH}
|
|
echo "Adding new certificate to /apex/com.android.conscrypt/cacerts." >> ${LOG_PATH}
|
|
|
|
# 创建一个临时目录
|
|
TEMP_DIR="/data/local/tmp/proxypin-ca-certs"
|
|
mkdir -p "$TEMP_DIR"
|
|
|
|
# 挂载临时文件系统
|
|
mount -t tmpfs tmpfs "$TEMP_DIR"
|
|
|
|
# 复制原始证书到临时目录
|
|
cp -f /apex/com.android.conscrypt/cacerts/* "$TEMP_DIR"
|
|
|
|
# 添加新证书到临时目录
|
|
cp -f "$NEW_CERT_FILE" "$TEMP_DIR"
|
|
|
|
# 检查新证书是否成功添加
|
|
if [ -f "$TEMP_DIR/$(basename "$NEW_CERT_FILE")" ]; then
|
|
# 如果新证书成功添加,则挂载回原始目录
|
|
mount --bind "$TEMP_DIR" /apex/com.android.conscrypt/cacerts
|
|
echo "Mount success!" >> ${LOG_PATH}
|
|
else
|
|
echo "Failed to add new certificate." >> ${LOG_PATH}
|
|
fi
|
|
|
|
# 卸载临时目录
|
|
umount "$TEMP_DIR"
|
|
rmdir "$TEMP_DIR"
|
|
else
|
|
echo "/apex/com.android.conscrypt/cacerts not exists." >> ${LOG_PATH}
|
|
fi |