[Click] Newbie problem with configuration file.

Wang, Chip Chip.Wang at gdcanada.com
Mon Aug 8 16:49:52 EDT 2005


Hi,

I am a newbie here. I download and installed version 1.4.3.
I used make-ip-conf.pl to generate a configuration file for my first user level test run.
When I invoke click with 'click my_config', click printed out the following error message and quit:
	While configuring 'toh :: ToHost'; too few arguments; expected 'string'

I checked the configuration file, ToHost wasn't given any arguments.
The manpage shows the argument to ToHost is optional.
Has there been a change to the calling sequence, and how I should fix it?
My configuration is attached below.

Thanks,

Chip


// Generated by make-ip-conf.pl
// eth0 10.0.1.1 00:00:00:00:01:01
// eth1 10.0.2.1 00:00:00:00:01:02

// Shared IP input path and routing table
ip :: Strip(14)
    -> CheckIPHeader(INTERFACES 10.0.1.1/255.255.255.0 10.0.2.1/255.255.255.0)
    -> rt :: StaticIPLookup(
	10.0.1.1/32 0,
	10.0.1.255/32 0,
	10.0.1.0/32 0,
	10.0.2.1/32 0,
	10.0.2.255/32 0,
	10.0.2.0/32 0,
	10.0.1.0/255.255.255.0 1,
	10.0.2.0/255.255.255.0 2,
	255.255.255.255/32 0.0.0.0 0,
	0.0.0.0/32 0,
	0.0.0.0/0.0.0.0 18.26.4.1 1);

// ARP responses are copied to each ARPQuerier and the host.
arpt :: Tee(3);

// Input and output paths for eth0
c0 :: Classifier(12/0806 20/0001, 12/0806 20/0002, 12/0800, -);
FromDevice(eth0) -> c0;
out0 :: Queue(200) -> todevice0 :: ToDevice(eth0);
c0[0] -> ar0 :: ARPResponder(10.0.1.1 00:00:00:00:01:01) -> out0;
arpq0 :: ARPQuerier(10.0.1.1, 00:00:00:00:01:01) -> out0;
c0[1] -> arpt;
arpt[0] -> [1]arpq0;
c0[2] -> Paint(1) -> ip;
c0[3] -> Print("eth0 non-IP") -> Discard;

// Input and output paths for eth1
c1 :: Classifier(12/0806 20/0001, 12/0806 20/0002, 12/0800, -);
FromDevice(eth1) -> c1;
out1 :: Queue(200) -> todevice1 :: ToDevice(eth1);
c1[0] -> ar1 :: ARPResponder(10.0.2.1 00:00:00:00:01:02) -> out1;
arpq1 :: ARPQuerier(10.0.2.1, 00:00:00:00:01:02) -> out1;
c1[1] -> arpt;
arpt[1] -> [1]arpq1;
c1[2] -> Paint(2) -> ip;
c1[3] -> Print("eth1 non-IP") -> Discard;

// Local delivery
toh :: ToHost;
arpt[2] -> toh;
rt[0] -> EtherEncap(0x0800, 1:1:1:1:1:1, 2:2:2:2:2:2) -> toh;

// Forwarding path for eth0
rt[1] -> DropBroadcasts
    -> cp0 :: PaintTee(1)
    -> gio0 :: IPGWOptions(10.0.1.1)
    -> FixIPSrc(10.0.1.1)
    -> dt0 :: DecIPTTL
    -> fr0 :: IPFragmenter(1500)
    -> [0]arpq0;
dt0[1] -> ICMPError(10.0.1.1, timeexceeded) -> rt;
fr0[1] -> ICMPError(10.0.1.1, unreachable, needfrag) -> rt;
gio0[1] -> ICMPError(10.0.1.1, parameterproblem) -> rt;
cp0[1] -> ICMPError(10.0.1.1, redirect, host) -> rt;

// Forwarding path for eth1
rt[2] -> DropBroadcasts
    -> cp1 :: PaintTee(2)
    -> gio1 :: IPGWOptions(10.0.2.1)
    -> FixIPSrc(10.0.2.1)
    -> dt1 :: DecIPTTL
    -> fr1 :: IPFragmenter(1500)
    -> [0]arpq1;
dt1[1] -> ICMPError(10.0.2.1, timeexceeded) -> rt;
fr1[1] -> ICMPError(10.0.2.1, unreachable, needfrag) -> rt;
gio1[1] -> ICMPError(10.0.2.1, parameterproblem) -> rt;
cp1[1] -> ICMPError(10.0.2.1, redirect, host) -> rt;


The information contained in this e-mail message is PRIVATE. It may contain confidential information and may be legally privileged. It is intended for the exclusive use of the addressee(s). If you are not the intended recipient, you are hereby notified that any dissemination, distribution or reproduction of this communication is strictly prohibited. If the intended recipient(s) cannot be reached or if a transmission problem has occurred, please notify the sender immediately by return e-mail and destroy all copies of this message. 
Thank you. 



More information about the click mailing list