**This is automatically generated documentation.** Edit after the "[[#COMMENTS|COMMENTS]]" heading; changes to the main body will be lost. ====== click-align ====== adds required Align elements to a Click configuration ===== SYNOPSIS ===== **click-align** [//options//] [//param//=//value// ...] [//router-file//] ===== DESCRIPTION ===== 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 [[language]] language, adds any required [[:elements/Align|Align]] elements, and writes the new configuration to the standard output. Several Click elements, such as [[:elements/CheckIPHeader|CheckIPHeader]] and [[:elements/ToLinux|ToLinux]], 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 [[:elements/Align|Align]] elements as required to ensure that packets will be properly aligned. It also adds an [[:elements/AlignmentInfo|AlignmentInfo]] 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. ===== OPTIONS ===== 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. ? **--help** ! Print usage information and exit. ? **--version** ! Print the version number and some quickie warranty information and exit. ===== SEE ALSO ===== [[language]], [[:elements/Align|Align]], [[:elements/AlignmentInfo|AlignmentInfo]] ===== AUTHOR ===== Eddie Kohler, kohler@cs.ucla.edu\\ [[http://www.pdos.lcs.mit.edu/click/|http://www.pdos.lcs.mit.edu/click/]] ===== COMMENTS =====