This is what we are testing:

char * name_skip(char * cp) { int i;

for(i=0;i<MAXDNAME;i++) {
  if ( ((u_char)*(cp + i)) == 0 )
    return((u_char *)(cp +i + 1));
  else if ( ((u_char)*(cp + i)) < 0xC0 )
    continue;
  else 
    return((u_char *)(cp +i + 2));
}
/* ERROR, should not reach      */
return(NULL);
}