9aa2d973eed1fc49b9a79bf3f45ecf9560c7657a
galt
  Tue Jan 16 13:53:25 2018 -0800
Adding similar functions for storing a char in a pointer, useful with our hashes if you have simple char data.

diff --git src/lib/obscure.c src/lib/obscure.c
index 9b95092..6c5061d 100644
--- src/lib/obscure.c
+++ src/lib/obscure.c
@@ -241,30 +241,47 @@
 {
 int bufSize = 64*1024, readSize;
 char *buf = needMem(bufSize);
 
 for (;;)
     {
     readSize = read(s, buf, bufSize);
     if (readSize > 0)
         mustWriteFd(d, buf, readSize);
     if (readSize <= 0)
         break;
     }
 freeMem(buf);
 }
 
+void *charToPt(char c)
+/* Convert char to pointer. Use when really want to store
+ * a char in a pointer field. */
+{
+char *pt = NULL;
+return pt+c;
+}
+
+char ptToChar(void *pt)
+/* Convert pointer to char.  Use when really want to store a
+ * pointer in a char. */
+{
+char *a = NULL, *b = pt;
+return b - a;
+}
+
+
 void *intToPt(int i)
 /* Convert integer to pointer. Use when really want to store an
  * int in a pointer field. */
 {
 char *pt = NULL;
 return pt+i;
 }
 
 int ptToInt(void *pt)
 /* Convert pointer to integer.  Use when really want to store a
  * pointer in an int. */
 {
 char *a = NULL, *b = pt;
 return b - a;
 }