/sbin/vregistry --list . samba.share_available.* samba.share_public.* .
The * was meaning that an key was need to properly select a record to update. Unfortunately, the virtual registry was not rich enough to tell which variable. It is now. The above example now produces:
/sbin/vregistry --list . samba.share_available.[samba.shares] samba.share_public.[samba.shares] .
The key variable may be queried so automated operation like this are possible.
for share in `/sbin/vregistry --getvalue samba.shares` do /sbin/vregistry --set samba.share_available.$share 0 done
This example would disable all share on a server.
Also the way vregistry variable are registered is simplified. It was already simple, it's even better :-) Most module have been updated. the old way was kept for compatibility.