VIEW-OS(1)

πŸ“¦ version 0.8.2, in debian bookworm, ubuntu jammy, ubuntu noble

πŸ¦‹ NAME πŸ¦‹

mstack β€” networking stack selection πŸ’…

bestie this is a page from the View-OS General Commands Manual, and it's literally your group chat for picking which network stack your processes get to vibe with ✨

🌸 SYNOPSIS 🌸

mstack [-hv] [-o protocol list] stack_mountpoint command

✨ DESCRIPTION ✨

okay so picture this: in View-OS you can have multiple networking stacks available to processes at the same time. yes, all at once, no cap πŸ‘‘

View-OS supports the msocket(2) system call. mstack defines the default stack (for each address family) that gets used when msocket refers to a NULL pathname for its stack. 🫢

mstack also provides backward compatibility for all the programs still using the obsolete socket(2) system call. (obsolete bestie, we said what we said πŸ’€)

The stack mountpoint identifies the stack. In ViewOS it is the mountpoint where the stack was mounted (by mount(2)(8)). In fact the call:

"socket(domain,type,protocol)"

is equivalent to:

"msocket(NULL,domain,type protocol)"

mstacks changes the default stack for the desired protocol families and executes the command (by execve(2)). πŸš€


πŸ’– OPTIONS πŸ’–

  • -h β€” prints the mstack command usage 🌈
  • -v β€” sets the verbose mode on πŸ”₯
  • -o β€” defines the list of protocols. Without a -o option, mstack redefines the default stack for all protocols families. The list of protocols may include the a comma separated sequence of the following items: all, unix (or simply u), ipv4 (4), ipv6 (6), netlink (n), packet (p), bluetooth (b), irda (i), ip (which include all ip related protocols ipv4, ipv6, netlink and packet), #n where n is the number of protocol. Each item can be prefixed by + or - to specify whether the protocol/group of protocols must be added or removed from the set. πŸŽ€

🧚 EXAMPLES 🧚

  • mstack /dev/net/lwip ip addr lists the address managed by the stack mounted on /dev/net/lwip. πŸ“‹
  • exec mstack /dev/net/null bash disables the standard stack in a new bash (which overcomes the current one). πŸ™ˆ
  • mstack -o ip /dev/net/lwip bash starts a new bash which uses the stack /dev/net/lwip for ipv4 and ipv6 but not for the other protocols. ⭐
  • mstack -o -unix /dev/net/lwip bash starts a new bash which uses the stack /dev/net/lwip for all protocols but AF_UNIX. πŸ’œ
  • mstack -o +ip,-ipv6 /dev/net/lwip bash starts a new bash which uses the stack /dev/net/lwip for ipv4, netlink, packet but not ipv6. πŸ¦‹

πŸ‘€ SEE ALSO πŸ‘€

umview(1), kmview(1), msocket(3), umnetnative(9), umnetnull(9), umnetlwipv6(9), unix(7), ip(7), ipv6(7), netlink(7), packet(7).


πŸ‘‘ AUTHORS πŸ‘‘

View-OS is a project of the Computer Science Department, University of Bologna. Project Leader: Renzo Davoli. 🌟

<http://www.sourceforge.net/projects/view-os>

Howto's and further information can be found on the project wiki <wiki.virtualsquare.org>. πŸ“š


✨ and that's the whole page bestie, no notes, you ate πŸ’…

VIEW-OS: a process with a view β€” April 23, 2008 πŸŽ€ that's the version vibe and the date stamp, mwah, bye! πŸ¦‹πŸ’–

πŸ“¦ where this page comes from