diff -Nur smeserver-usbdisksmanager-1.2.old/root/etc/e-smith/db/confusbdisks/migrate/00openRW smeserver-usbdisksmanager-1.2/root/etc/e-smith/db/confusbdisks/migrate/00openRW --- smeserver-usbdisksmanager-1.2.old/root/etc/e-smith/db/confusbdisks/migrate/00openRW 1969-12-31 19:00:00.000000000 -0500 +++ smeserver-usbdisksmanager-1.2/root/etc/e-smith/db/confusbdisks/migrate/00openRW 2019-01-13 23:14:26.433000000 -0500 @@ -0,0 +1,4 @@ +{ + $DB = esmith::ConfigDB->open(${DB_FILENAME}); +} + diff -Nur smeserver-usbdisksmanager-1.2.old/root/etc/e-smith/db/confusbdisks/migrate/10options smeserver-usbdisksmanager-1.2/root/etc/e-smith/db/confusbdisks/migrate/10options --- smeserver-usbdisksmanager-1.2.old/root/etc/e-smith/db/confusbdisks/migrate/10options 1969-12-31 19:00:00.000000000 -0500 +++ smeserver-usbdisksmanager-1.2/root/etc/e-smith/db/confusbdisks/migrate/10options 2019-01-13 23:14:51.014000000 -0500 @@ -0,0 +1,27 @@ +{ + my @add = split(/[,; ]+/, ''); + my %remove = map { $_ => 1 } split(/[,; ]+/, 'managed,pamconsole'); +# options=pamconsole,exec,noauto,managed,gid=102,uid=101 +# options=pamconsole,exec,noauto,managed + for my $repo ( $DB->get_all ) + { + #warn $repo->key; + my @options = split(/,/, $repo->prop('options') || ''); + push @options, @add; + @options = grep(!defined $remove{$_} , @options); + + # remove duplicates + undef %saw; + @options = grep(!$saw{$_}++, @options); + + if ($#options >= 0) + { + $repo->set_prop('options', join(',', @options)); + } + else + { + # $repo->delete('options'); + } + } +} +