Kill all virtual circuits to a node (QNX)
kill_vcs node_number
This utility has potentially dangerous side-effects -- read the complete description! |
The kill_vcs utility allows a root user to eliminate all virtual circuits between the machine the command is run on and the specified node.
Running this utility can also cause the destruction of virtual circuits to nodes other than the one specified!
The kill_vcs utility kills virtual circuits by first masking the target node in the local node's netmap table. The utility then tightens the local netpoll values to cause the virtual circuit to be torn down by virtual circuit polling (the polls can't reach the destination because there is no network mapping for it, so they fail). The utility waits approximately four seconds to give Proc time to realize that the remote node is not responding, and to tear down the virtual circuit(s). The netpoll parameters are then restored to their previous setting, and the netmap mapping is unmasked.
Note that after waiting for four seconds the network mapping will be unmasked even if it had been masked before kill_vcs was run.
Since the network polling parameters affect all virtual circuits to all nodes (not just the node specified), the tightening of the polling parameters may cause VCs to other nodes to be torn down. This will occur if there is a problem polling any of the VCs to other nodes during the four second time period in which the poll parameters are tightened. In particular, caution should be exercised if there are any virtual circuits open to other nodes through Net.fd or any other slow or unreliable interface.
The network mapping and the netpoll parameters are not locked during the duration of kill_vcs. It is possible for kill_vcs to fail to eliminate virtual circuits if another program (such as netmask or netpoll) restores the network mapping or changes the network polling parameters before the four second time period has elapsed.
Kill all the VCs to node 95:
kill_vcs 95