openafs (1.4.4.dfsg1-6) unstable; urgency=low
+ * Apply upstream patch for the OpenAFS file server to treat clients that
+ have an all-zero UUID as if they don't have UUID support, working
+ around bugs in various client versions that can cause multiple hosts
+ to use all-zero UUIDs and conflict with each other.
* Use dpkg --print-architecture to determine the AFS sysname for both
regular builds (avoiding --print-installation-architecture, which is
deprecated) and kernel builds (avoiding arch, which is temporarily not
although OpenAFS currently only supports 2.4 kernels on HPPA so this
isn't that useful.
- -- Russ Allbery <rra@debian.org> Thu, 02 Aug 2007 19:52:55 -0700
+ -- Russ Allbery <rra@debian.org> Thu, 02 Aug 2007 19:54:00 -0700
openafs (1.4.4.dfsg1-5) unstable; urgency=low
extern int lwps; /* the max number of server threads */
extern afsUUID FS_HostUUID;
+afsUUID nulluuid;
int CEs = 0; /* active clients */
int CEBlocks = 0; /* number of blocks of CEs */
struct client *CEFree = 0; /* first free client */
rx_PutConnection(cb_conn);
cb_conn=NULL;
H_LOCK;
- if (code == RXGEN_OPCODE) {
+ if ((code == RXGEN_OPCODE) ||
+ (afs_uuid_equal(&interf.uuid, &nulluuid))) {
identP = (struct Identity *)malloc(sizeof(struct Identity));
if (!identP) {
ViceLog(0, ("Failed malloc in h_GetHost_r\n"));
rx_PutConnection(cb_conn);
cb_conn=NULL;
H_LOCK;
- if (code == RXGEN_OPCODE) {
+ if ((code == RXGEN_OPCODE) ||
+ afs_uuid_equal(&interf.uuid, &nulluuid)) {
if (!identP)
identP =
(struct Identity *)malloc(sizeof(struct Identity));
void
h_InitHostPackage()
{
+ memset(&nulluuid, 0, sizeof(afsUUID));
afsconf_GetLocalCell(confDir, localcellname, PR_MAXNAMELEN);
if (!local_realm[0]) {
if (afs_krb_get_lrealm(local_realm, 0) != 0 /*KSUCCESS*/) {