
On Thu, Aug 07, 2008 at 04:30:30AM -0400, Daniel Veillard wrote:
On Wed, Aug 06, 2008 at 08:20:38AM -0700, Dan Smith wrote:
only current devices, but not device names already planned for the other half of a container's device pair. Thus, the search can result in attempting to create a pair of devices such as veth1 and veth1, which obviously does not work.
This patch augments the logic to be a little smarter in this regard, and should fix one case where attempting to start a container results in an error message of "unable to create device pair". [...] - if (1 > strlen(veth2)) { + while ((1 > strlen(veth2)) || STREQ(veth1, veth2)) { vethDev = getFreeVethName(veth2, veth2MaxLen, vethDev); DEBUG("assigned veth2: %s", veth2); }
Seems a side effect statement is needed in this loop to exit it if we happen to enter it, no ?
okay, i re-read and understand now, +1 Daniel -- Red Hat Virtualization group http://redhat.com/virtualization/ Daniel Veillard | virtualization library http://libvirt.org/ veillard@redhat.com | libxml GNOME XML XSLT toolkit http://xmlsoft.org/ http://veillard.com/ | Rpmfind RPM search engine http://rpmfind.net/