netextender

LOW
maintainer satoki 31 votes scanned 2026-10-17 00:21:55.226236
View on AUR
Why flagged

The package downloads prebuilt binaries from SonicWall's official software domain, which is the legitimate vendor; despite the static analyzer flag for a non-standard host, the source is trustworthy and the binaries are expected for this proprietary software.

Triggered rules

Low AI review downgraded a static finding llm_review

The static rules flagged this MEDIUM, but an AI model (qwen/qwen3-235b-a22b-2507) reviewed the full PKGBUILD and judged it LOW (confidence 95%): The package downloads prebuilt binaries from SonicWall's official software domain, which is the legitimate vendor; despite the static analyzer flag for a non-standard host, the source is trustworthy and the binaries are expected for this proprietary software.

1 higher static finding superseded - not the current verdict (shown for transparency)
Medium source=() URL on a non-standard host source_untrusted_domain

One or more source=() URLs point to a host outside the trusted allowlist (github.com, gitlab.com, codeberg.org, pypi.org, …).

  • PKGBUILD:33 "https://software.sonicwall.com/NetExtender/NetExtender-linux-arm64-${pkgver/_/-}.tar.gz"
  • PKGBUILD:34 "https://www.sonicwall.com/legal/general-product-agreement"

PKGBUILD

2 offending line(s) highlighted
1# Maintainer: Sato Ki <satoki at em dot advant dot click>
2# Contributor: techge
3# Contributor: physkets
4# Contributor: Andrew Crouthamel
5# Contributor: Liviu Cristian Mirea-Ghiban
6# Contributor: Lars Øyvind Hagland
7# Contributor: Vishnu V K
8# Contributor: George Shammas
9# Contributor: Ainola
10# Contributor: Jeff Sharpe
11# Contributor: Roman Pearah
12
13pkgname=netextender
14pkgver=10.3.6_39
15pkgrel=2
16pkgdesc="SonicWALL SSL VPN Client"
17arch=('aarch64' 'x86_64')
18url="https://www.sonicwall.com/en-us/products/remote-access/vpn-client"
19license=('LicenseRef-SonicWall-General-Product-Agreement')
20depends=('bash'
21 'net-tools'
22 'webkit2gtk-4.1'
23 'resolvconf'
24 'iproute2'
25 'hicolor-icon-theme')
26optdepends=('xdg-utils: open the browser for SAML/external authentication'
27 'bind: nslookup in the Diagnostics tab'
28 'traceroute: traceroute in the Diagnostics tab'
29 'iperf3: throughput test in the Diagnostics tab'
30 'nftables: firewall rules for WireGuard tunnel-all mode'
31 'iptables: firewall rules for WireGuard tunnel-all mode, if nft is absent')
32source_aarch64=(
33 "https://software.sonicwall.com/NetExtender/NetExtender-linux-arm64-${pkgver/_/-}.tar.gz"
34 "https://www.sonicwall.com/legal/general-product-agreement"
35 "com.sonicwall.NetExtender.desktop.patch"
36 "NEService.service.patch"
37 "neservice.patch"
38 "netextender.install"
39 "resolvconf-shim"
40)
41source_x86_64=(
42 "https://software.sonicwall.com/NetExtender/NetExtender-linux-amd64-${pkgver/_/-}.tar.gz"
43 "https://www.sonicwall.com/legal/general-product-agreement"
44 "com.sonicwall.NetExtender.desktop.patch"
45 "NEService.service.patch"
46 "neservice.patch"
47 "netextender.install"
48 "resolvconf-shim"
49)
50sha256sums_aarch64=(
51 "4e9d35d4b28cc175260689661f0ed25b8068bfda27563a2f0ce04c16d38ef5d9"
52 "SKIP"
53 "1c591a89e1b13112b51fe1bb9f0c0b4969530a3b7fd4949df1650365c39350d1"
54 "8f77c91234de54578743f8b57395785c7d6852fb4c7f5d452e6321ba3744ebde"
55 "7c64cd38edb35aaf601fc01b9982fffc42542917832f9155c8ccf6605331ce9d"
56 "6972d594eec5a0d8c884f960360cebcf44e900cd20705a07de78c23127a92d68"
57 "331d4ef801d0d72a760ff5438098a3b61dfb92a5a76d17c973dbfa8eb2cf1c5d"
58)
59sha256sums_x86_64=(
60 "c2cb58cc39402ec5e08a18b57a73ff10ca313017ace06ea7bf04d9388c1b8357"
61 "SKIP"
62 "1c591a89e1b13112b51fe1bb9f0c0b4969530a3b7fd4949df1650365c39350d1"
63 "8f77c91234de54578743f8b57395785c7d6852fb4c7f5d452e6321ba3744ebde"
64 "7c64cd38edb35aaf601fc01b9982fffc42542917832f9155c8ccf6605331ce9d"
65 "6972d594eec5a0d8c884f960360cebcf44e900cd20705a07de78c23127a92d68"
66 "331d4ef801d0d72a760ff5438098a3b61dfb92a5a76d17c973dbfa8eb2cf1c5d"
67)
68
69install="${pkgname}.install"
70DLAGENTS=("https::/usr/bin/curl -A 'Mozilla' -fLC - --retry 3 --retry-delay 3 -o %o %u")
71
72package() {
73
74 install -Dm 644 general-product-agreement "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
75
76 cd "netextender"
77
78 netextenderdir="${pkgdir}/opt/netextender"
79
80 install -Dm 755 wg "${netextenderdir}/wg"
81 install -Dm 755 wg-quick "${netextenderdir}/wg-quick"
82 install -Dm 755 wireguard-go "${netextenderdir}/wireguard-go"
83 install -Dm 755 NEService "${netextenderdir}/NEService"
84 install -Dm 755 NetExtender_webkit2_41 "${netextenderdir}/NetExtender"
85 #install -Dm 755 autoUpgrader_webkit2_41 "${netextenderdir}/autoUpgrader"
86 install -Dm 755 nxcli "${netextenderdir}/nxcli"
87 #install -Dm 755 upgrade.sh "${netextenderdir}/upgrade.sh"
88 patch "${srcdir}/netextender/NEService.service" < "${srcdir}/NEService.service.patch"
89 patch "${srcdir}/netextender/neservice" < "${srcdir}/neservice.patch"
90 install -Dm 644 NEService.service "${netextenderdir}/NEService.service"
91 install -Dm 644 neservice "${netextenderdir}/neservice"
92
93 # NEService 10.3.6 replaced its resolvectl fallback with a probe that only
94 # accepts resolvconf if "resolvconf --version" mentions openresolv.
95 # systemd-resolvconf reports "systemd NNN", so the probe fails and the tunnel
96 # comes up with no DNS servers, search domains or default route on the link.
97 # The shim corrects only that banner; NEService.service puts it first on PATH.
98 install -Dm 755 "${srcdir}/resolvconf-shim" "${netextenderdir}/bin/resolvconf"
99
100 mkdir -p "${netextenderdir}/locales"
101 install -Dm 644 locales/* "${netextenderdir}/locales"
102
103 patch "${srcdir}/netextender/com.sonicwall.NetExtender.desktop" < "${srcdir}/com.sonicwall.NetExtender.desktop.patch"
104 install -Dm 644 com.sonicwall.NetExtender.desktop "${netextenderdir}/com.sonicwall.NetExtender.desktop"
105 # The GTK window sets its Wayland app_id from argv[0], i.e. "NetExtender".
106 # KWin only finds a window's icon through a desktop file named after the
107 # app_id, so the entry must be installed as NetExtender.desktop.
108 install -Dm 644 com.sonicwall.NetExtender.desktop "${pkgdir}/usr/share/applications/NetExtender.desktop"
109 install -Dm 644 nx-icon.png "${netextenderdir}/nx-icon.png"
110 install -Dm 644 nx-icon.png "${pkgdir}/usr/share/icons/hicolor/128x128/apps/netextender.png"
111
112 mkdir -p "${pkgdir}/usr/bin"
113 ln -s /opt/netextender/nxcli "${pkgdir}/usr/bin/netExtender"
114 ln -s /opt/netextender/nxcli "${pkgdir}/usr/bin/nxcli"
115
116 # Unconditional: probing the build host's PID 1 makes the package depend on
117 # where it was built, and yields no unit at all inside a clean chroot.
118 # /etc/systemd/system belongs to the sysadmin, packages ship units in /usr/lib.
119 # OpenRC users can install /opt/netextender/neservice into /etc/init.d.
120 install -Dm 644 NEService.service "${pkgdir}/usr/lib/systemd/system/NEService.service"
121
122 install -dm 755 "${netextenderdir}" \
123 "${netextenderdir}/bin" \
124 "${netextenderdir}/locales"
125}
126

Scan history

Scanned at (UTC)SeverityRules
2026-10-17 00:21:55 Low 2
2026-10-16 00:12:47 Low 2
2026-10-15 00:28:05 Low 2
2026-10-14 00:06:47 Low 2
2026-10-13 00:23:45 Low 2
2026-10-12 00:18:51 Low 2
2026-10-11 00:26:05 Low 2
2026-10-10 00:11:52 Low 2
2026-10-09 00:05:33 Low 2
2026-10-08 00:28:03 Low 2
2026-10-07 00:21:34 Low 2
2026-10-06 00:13:36 Low 2
2026-10-05 00:08:03 Low 2
2026-10-04 00:18:08 Low 2
2026-10-03 00:23:04 Low 2
2026-10-02 00:00:32 Low 2
2026-10-01 00:02:06 Low 2
2026-09-30 00:20:07 Low 2
2026-09-29 00:07:46 Low 2
2026-09-28 00:28:32 Low 2

Report a package

Reports go to the AURWatch maintainer (one person) and are read by hand. No login required.

0 / 4000
Your suggestion