Note: "permalinks" may not be as permanent as we would like,
direct links of old sources may well be a few messages off.
Hi Jeffrey, > We're using DRBD with heartbeat and we're seeing an error if we configure > a host with an all-numeric hostname. > > --------------------------------- > Starting DRBD resources: > //etc/drbd.conf:37: Parse error: 'TK_STRING | '('' expected. > but got '123456' (TK 281) > --------------------------------- > > Line 37 of the drbd.conf file is the "on <host> {" line. In this case, the hostname being used is "123456". ... > This seems like a bug to me, but I haven't found reference to anyone else > having the problem, so I thought I'd see if there's a solution that I'm > missing. Seems to me that the parse_hosts() function should accept > TK_STING or TK_INTEGER. Yeah, right, basically. The workaround is to enclose the hostname in quotes, as in on "123456" { ... } To be honest, this is the first time I've ever heard of a full-numeric hostname; I guess that quite some other things might go wrong this way, because IPv4 addresses don't *have* *to* have the dots in them: # getent hosts 123456 0.1.226.64 123456 This is using the inet_pton() function (inet_aton() works the same), so I don't think we want to support purely numeric hostnames. If we ever allow to use DNS names in the DRBD configuration files' "address" items, should "address 123456:1234" be parsed as IPv4 or via host name lookup? Would you risk that your definition "1234567" suddenly gets mapped to a 123457.com domain, as soon as someone added that one, "just because" your resolv.conf contains "search .com"? I've seen similar problems with programs that wrote IP addresses via "%03d.%03d.%03d.%03d" - the leading zeroes make the digits get interpreted as octal numbers...