aboutsummaryrefslogtreecommitdiff
path: root/decode.sh
blob: cd483f1b76e73d14cde15a6a24ce2cf531a98463 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#!/bin/sh
set -efu

log() {
  printf "$@" >&2
}

fatal() {
  log "$@"
  exit 1
}

[ -z "${XCTUDIR:-}" ] && \
  fatal "Please, set environment variable XCTUDIR,
e.g. XCTUDIR=/home/zar/opt/Digi/XCTU-NG\n"

[ $# -ne 1 ] && fatal "usage: %s <file.ehx2>\n" "$0"

file=$1
[ ! -e "$file" ] && fatal "No file \"%s\" exists\n" "$file"

dir=$(dirname "$file")
dec=$(printf "%s.dec" "$file")

touch "$dec"

chmod u-w "$dir"
[ ! -e "XCTUDecodeRequest.class" ] && javac -cp "${XCTUDIR}/plugins/*" XCTUDecodeRequest.java
java -cp "${XCTUDIR}/plugins/*:." XCTUDecodeRequest "$file" 2>/dev/null
chmod u+w "$dir"

cat "$dec"
rm "$dec"