conn = findconn (entry, ce);  if (conn == NULL) return ENETDOWN;  ret = RXAFS_FetchStatus (conn->connection, &entry->fid.fid, &status, &callback, &volsync);
do_read_attr (FCacheEntry *entry,	      CredCacheEntry *ce,	      ConnCacheEntry **ret_conn){    int ret;    ConnCacheEntry *conn;    AFSFetchStatus status;    AFSCallBack callback;    AFSVolSync volsync;    assert (CheckLock(&entry->lock) == -1);    if (connected_mode == DISCONNECTED) {	*ret_conn = NULL;	if (entry->flags.attrp == TRUE)	    return 0;	return ENETDOWN;    }    conn = findconn (entry, ce);    if (conn == NULL)	return ENETDOWN;    ret = RXAFS_FetchStatus (conn->connection,			     &entry->fid.fid,			     &status,			     &callback,			     &volsync);    if (ret) {	if (ret == -1)	    ret = ENETDOWN;	conn_free(conn);	arla_warn (ADEBFCACHE, ret, "fetch-status");	return ret;    }    if (entry->flags.datap	&& entry->status.DataVersion != status.DataVersion) {	throw_data (entry);	entry->tokens &= ~(XFS_DATA_R|XFS_DATA_W);    }    update_entry (entry, &status, &callback, &volsync,		  rx_HostOf (rx_PeerOf (conn->connection)),		  ce->cred);    entry->tokens |= XFS_ATTR_R;    entry->flags.attrp = TRUE;        *ret_conn = conn;    return 0;}