pub(crate) async fn handle_client(
    sock: UnixStream,
    cachelayer: Arc<Resolver<KanidmProvider>>,
    task_channel_tx: &Sender<(TaskRequest, Sender<()>)>
) -> Result<(), Box<dyn Error>>