script "/sbin/dhclient-script";

option space cwmp code width 2 length width 2;
option cwmp.acs-url code 1 = text;
option cwmp.provisioning-code code 2 = text;
option cwmp.retry-minimum-wait-interval code 3 = text;
option cwmp.retry-interval-multiplier code 4 = text;
option vsio.cwmp code 3561 = encapsulate cwmp;
send dhcp6.client-id = concat(00:03:00, hardware);

option dhcp6.vendor-class code 16 = {integer 32, integer 16, string};
interface "br0" {
    # vendor = 3561 (Broadband Forum), len = 12, content = dslforum.org
    send dhcp6.vendor-class 3561 12 "dslforum.org";
    also request dhcp6.fqdn, dhcp6.sntp-servers, dhcp6.vendor-opts;
}
interface "man" {
    # vendor = 3561 (Broadband Forum), len = 12, content = dslforum.org
    send dhcp6.vendor-class 3561 12 "dslforum.org";
    also request dhcp6.fqdn, dhcp6.sntp-servers, dhcp6.vendor-opts;
}
