shared between client and daemon