If you like BoxMatrix then please contribute Supportdata, Supportdata2, Firmware and/or Hardware (get in touch).
My metamonk@yahoo.com is not reachable by me since years. Please use hippie2000@webnmail.de instead.

0
U

Property:tcpproxyd (avmcmd)

From BoxMatrix


BoxMatrix >> Shell-Commands >> tcpproxyd (avmcmd) @ BoxMatrix   -   IRC-Chat   -   Translate: de es fr it nl pl
News Selectors Models Accessories Components Environment Config Commands System Webif Software Develop Lexicon Community Project Media

Startup-Scr Hotplug-Scr BusyBox-Cmds Bash-Cmds AVM-Cmds Chipset-Cmds Linux-Cmds Shared-Libs Kernel-Mods Research

Info
  
Name-Collision - multiple objects in this wiki use the name tcpproxyd!
tcpproxyd (avmcmd) Inter-CPU TCP proxy daemon on early 6490 Puma6 ARM.
tcpproxyd (process) Inter-CPU TCP proxy daemon on early 6490 Puma6 ARM.
tcpproxyd (watchdog) Inter-CPU TCP proxy daemon on early 6490 Puma6 ARM.

AVM-Command

Goto:   Source  -  Dependencies   -   Model-Matrix   -   Symbols   -   SMW-Browser

Details

tcpproxyd is the Inter-CPU TCP proxy daemon on early 6490 Puma6 ARM firmware.
It is started without arguments in rc.net. The ports to proxy are configured on ATOM by tcpproxy_ctl.

tcpproxyd and tcpproxy_ctl are used by printserv and ftpd on early 6490 firmware.

Background: Up to 6490 fw 6.66 FRITZ!OS was nearly completely running on ARM, like in ARM-only 63xx Puma5 models.
The ATOM Intel added was nearly unused. Early Intel Puma6 SDK named it an application processor and did not use it at all.
Later AVM ported FRITZ!OS completely to ATOM, the ARM core is only used for the DOCSIS modem since then.

However, the USB-Host is connected to the ATOM, which has way better CPU performance than the ARM.
That is why AVM implemented all NAS and USB-Host functionality on the ATOM on early 6490 firmware.

This covers printserv and ftpd being proxied by tcpproxyd on ARM, tcpproxy_ctl on ATOM controling which ports.
The NAS webserver and the management of all USB related services was provided by nas_ctlmgr.
Since tcpproxyd does not support SSL nas_ctlmgr ran on a separate IP, which resolved from fritz.nas.
Stick+Surf is also splitted into avmstickandsurf.part1 on ARM and avmstickandsurf.part2 on ATOM, see avmstickandsurf.
For UMTS modems netttyd on ATOM multiplexes the TTY devices for netttym.ko on the ARM side.

The network on the ATOM on early 6490 firmware is managed by multid2.
IPv4 and IPv6 network addresses of the respective other side are gathered by avmipc_state.
Some ATOM ressources are mounted on the ARM side using nfs4.
For network throughput tests there's the remote controllable speedtestd on ATOM.

6490 fw 6.64:

# tcpproxyd -?

This is a proxy for ftp data connections on PUMA6 ATOM<->ARM

usage: tcpproxyd tcpproxyd [options]

options:
  -?                 - print this help
  -f                 - run in forground. (NOTSET)
  -s                 - stop daemon. (NOTSET)
  -p STRING          - Pidfile. ("/var/run/tcpproxyd.pid")
  -D STRING          - switch debug logs on. (FUNC)

start server:   tcpproxyd
stop server :   tcpproxyd -s

Source

The names of source files compiled into an executable often help to understand function blocks (and show gaps in the docs).
fw 6.64 source files:

$ strings /bin/tcpproxyd | grep -e '\.c$' -e '\.cpp$'

proxy,c  

Dependencies

Daily updated index of all dependencies of this command. Last update: 2024-04-26 07:29 GMT.
A * in the Mod column marks info from Supportdata-Probes, which will always stay incomplete.

Relation Typ Object Mod Firmware Info Origin
Runs as proc tcpproxyd (process) 1* 6.08 - 6.66 Inter-CPU TCP proxy daemon on early 6490 Puma6 ARM. AVM
Registers wdog tcpproxyd (watchdog) 1* 6.24 - 6.66 Inter-CPU TCP proxy daemon on early 6490 Puma6 ARM. AVM
Serving port Port-9100-tcp 5* 5.08 - 6.50 Remote print service by printserv AVM
Serving sock me_tcpproxyd.ctl 1* 6.08 - 6.66 avmipc endpoint of tcpproxyd AVM
Depends on lib libavmcsock.so 1 6.20 - 6.64 Networking, I/O and helper functions AVM
Depends on lib libavmhmac.so 1 6.50 - 6.64 HMAC / SHA / MD5 hashing. AVM
Depends on lib libboxlib.so 1 6.20 - 6.64 Box status, logging and statistics functions AVM
Depends on lib libc.so 1 6.20 - 6.64 Standard C library Linux
Depends on lib libdl.so 1 6.20 - 6.64 Dynamic linking library Linux
Depends on lib libdputil.so 1 6.50 - 6.64 DataPipe / packet utilities AVM
Depends on lib libewnwlinux.so 1 6.20 - 6.64 Linux networking functions AVM
Depends on lib libewnwnet.so 1 6.50 - 6.64 Internet helper functions AVM
Depends on lib libpthread.so 1 6.20 - 6.64 POSIX threading library Linux
Depends on lib librt.so 1 6.50 - 6.64 POSIX realtime extensions library Linux
Depends on lib libwdt.so 1 6.50 - 6.64 AVM-Watchdogs management API AVM
Depends on lib libwebsrv.so 1 6.50 - 6.64 HTTP / HTTPS webserver and tools. AVM
16 dependencies for this command

Model-Matrix

Daily updated index of the presence, path and size of this command for each model. Last update: 2024-04-26 05:10 GMT.
Showing all models using this command. Click any column header (click-wait-click) to sort the list by the respective data.
The (main/scrpn/boot/arm/prx/atom) label in the Model column shows which CPU is meant for models with multiple Linux instances.
Note that this list is merged from Firmware-Probes of all known AVM firmware for a model, including Recovery.exe and Labor-Files.

Model Firmware Path Size
FRITZ!Box 6490 Cable (arm) 6.20 - 6.64 /bin 9.8k
1 model uses this command

Symbols

Daily updated index of all symbols of this command. Last update: 2024-04-26 07:29 GMT.

Firmware Symbol
0 symbols for this command

SMW-Browser

Information is currently being retrieved from the backend.