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.
Property:tcpproxyd (avmcmd)
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 |
Name-Collision - multiple objects in this wiki use the name tcpproxyd!
|
AVM-Command
Command: | tcpproxyd (avmcmd) - type Exec | Wiki | Freetz | IPPF | whmf | AVM | Web |
Location: | Shell-Commands >> AVM-Commands - Origin: AVM | ||||||
Path: | Release: /bin Lab+Rel: /bin | ||||||
Properties: | Size: 9.8k - Firmware: 6.20 - 6.64 | ||||||
Function: | Inter-CPU TCP proxy daemon on early 6490 Puma6 ARM. |
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-12-21 07:44 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 | Process running tcpproxyd | AVM |
Registers | wdog | tcpproxyd (watchdog) | 1* | 6.24 - 6.66 | Watchdog for tcpproxyd | 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-12-21 05:44 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/rtl)
label in the Model
column shows which CPU is meant for Multi-Linux models.
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-12-21 07:44 GMT.
Firmware | Symbol |
---|---|
0 symbols for this command |