The commit 9ea90be39e9d (sheep: use rbtree to manage struct sd_node)
changes struct sd_node. So the master branch isn't compatible with
v0.7.x because it affects the format of GET_NODE_LIST's returned
buffer. Every dog command which has a flag CMD_NEED_NODELIST cannot
work (users see nodes have IPv6 addresses).

The affection is very serious so I propose either of the below two
changes:

1. change protocol version and forbid communication between 0.7.x dog
   and the latest sheep

2. change struct sd_node and exclude    struct rb_node  rb; from the
   members

I think 2 would be a better option. sd_node is a data structure which
can be exchanged via network and such a data structure shouldn't have
pointers as its members. Current sd_node is really ugly.

I'd like to hear other developers' opinions.

Thanks,
Hitoshi
-- 
sheepdog mailing list
[email protected]
http://lists.wpkg.org/mailman/listinfo/sheepdog

Reply via email to