adds required Align elements to a Click configuration


click-align [options] [param=value ...] [router-file]


The click-align tool makes Click router configurations usable on machines that don’t support unaligned accesses. It reads a router configuration file in the click(5) language, adds any required Align(n) elements, and writes the new configuration to the standard output.

Several Click elements, such as CheckIPHeader(n) and ToLinux(n), have alignment requirements. The CheckIPHeader element, for example, expects that the packet begins with an IP header, and that this IP header is four-byte-aligned. Normally, Click does not guarantee this: elements cannot know how input packets will be aligned. The click-align tool first analyzes the router configuration, then inserts Align(n) elements as required to ensure that packets will be properly aligned. It also adds an AlignmentInfo(n) element so elements can figure out what packet alignment they can expect.

The list of alignment requirements is currently built in to the click-align tool and cannot be changed except by recompilation.


If any filename argument is a single dash "-", click-align will use the standard input or output instead, as appropriate.

-f file
--file file
Read the router configuration to transform from file. The default is the standard input.

-e expr
--expr expr
Use expr, a string in the Click language, as the router configuration to transform.

-o file
--output file
Write the output router configuration to file. The default is the standard output.

Print usage information and exit.

Print the version number and some quickie warranty information and exit.


click(5), Align(n), AlignmentInfo(n)


Eddie Kohler, [email protected]