Openchange backport