def share_vm_image(self, vm_image_name, permission):
_validate_not_none('<STR_LIT>', vm_image_name)<EOL>_validate_not_none('<STR_LIT>', permission)<EOL>path = self._get_sharing_path_using_vm_image_name(vm_image_name)<EOL>query = '<STR_LIT>' + permission<EOL>path = path + '<STR_LIT:?>' + query.lstrip('<STR_LIT:&>')<EOL>return self._perform_put(<EOL>path, None, as_async=True, x_ms_version='<STR_LIT>'<EOL>)<EOL>
Share an already replicated OS image. This operation is only for
publishers. You have to be registered as image publisher with Windows
Azure to be able to call this.

vm_image_name:
    The name of the virtual machine image to share
permission:
    The sharing permission: public, msdn, or private