ret = RXAFS_Link (conn->connection, &dir_entry->fid.fid, name, &existing_entry->fid.fid, &new_status, &status, &volsync); if (ret) { arla_warn (ADEBFCACHE, ret, "Link"); goto out; }  usedbytes = usedbytes - dir_entry->status.Length + status.Length;
status.Length = dir_entry->status.Length;
create_link (FCacheEntry *dir_entry,	     const char *name,	     FCacheEntry *existing_entry,	     CredCacheEntry *ce){    int ret = 0;    ConnCacheEntry *conn;    AFSFetchStatus new_status;    AFSFetchStatus status;    AFSVolSync volsync;    assert (CheckLock(&dir_entry->lock) == -1);    conn = findconn (dir_entry, ce);    if (conn == NULL)	return ENETDOWN;    ret = RXAFS_Link (conn->connection,		      &dir_entry->fid.fid,		      name,		      &existing_entry->fid.fid,		      &new_status,		      &status,		      &volsync);    if (ret) {	arla_warn (ADEBFCACHE, ret, "Link");	goto out;    }    usedbytes = usedbytes - dir_entry->status.Length + status.Length;    update_entry (dir_entry, &status, NULL, &volsync,		  rx_HostOf(rx_PeerOf(conn->connection)),		  ce->cred);    update_entry (existing_entry, &new_status, NULL, NULL,		  rx_HostOf(rx_PeerOf(conn->connection)),		  ce->cred);out:    conn_free (conn);    return ret;}