{
    foreach my $ibay ($DB->get_all_by_prop(type => 'ibay'))
    {
	my $usepw = $DB->get_prop_and_delete($ibay->key, 'UsePassword');
	next unless defined $usepw;

	# This is a version 3.x i-bay
	# Migrate UsePassword, ReadAccess and WriteAccess properties to
	# PublicAccess, Group, UserAccess properties
	my $read_access = $DB->get_prop_and_delete($ibay->key, 'ReadAccess') || 'local';
	if ($read_access eq 'global')
	{
	    $ibay->merge_props(
		    PublicAccess => ($usepw ?  'global-pw' : 'global'),
		);
	}
	else
	{
	    $ibay->merge_props(
		    PublicAccess => ($usepw ?  'local-pw' : 'local'),
		);
	}

	my $write_access = $DB->get_prop_and_delete($ibay->key, 'WriteAccess') || 'local';
	$ibay->merge_props(
		    Group => 'shared',
		    UserAccess => ($write_access eq "admin" ?
			'wr_admin_rd_group' : 'wr-group-rd-group'),
		);
    }
}
