rem: err = -EPROTO;
add: err = -EIO;
context: static int sshfs_readlink(const char *path, char *linkbuf, size_t size){    int err;    struct buffer buf;    struct buffer name;    if (server_version < 3)        return -EPERM;    buf_init(&buf, 0);    buf_add_path(&buf, path);    err = sftp_request(SSH_FXP_READLINK, &buf, SSH_FXP_NAME, &name);    if (!err) {        uint32_t count;        char *link;        err = -EPROTO;        if(buf_get_uint32(&name, &count) != -1 && count == 1 &&           buf_get_string(&name, &link) != -1) {            strncpy(linkbuf, link, size-1);            linkbuf[size-1] = '\0';            free(link);            err = 0;        }        buf_free(&name);    }    buf_free(&buf);    return err;}