int
Hfmt(Fmt *f)
{
- uchar *p;
-
- p = va_arg(f->args, uchar*);
- return fmtprint(f,
- "%.2x%.2x%.2x%.2x%.2x%.2x",
- p[0], p[1], p[2], p[3], p[4], p[5]);
+ uchar *p, *e;
+ for(p = va_arg(f->args, uchar*), e = p + HASHSZ; p != e; p++)
+ if(fmtprint(f, "%.2x", *p) < 0)
+ return -1;
+ return 0;
}
int
}
int
-strhash(char *s, uchar *h)
+hex2hash(char *s, uchar *h)
{
uchar *b;
int n;
}
return h - b;
}
+
+uvlong
+hash2qid(uchar *h)
+{
+ uvlong v;
+ int i;
+
+ v = 0;
+ for(i=0; i<8; i++)
+ v |= (uvlong)h[i]<<(56-8*i);
+ return v;
+}