S_EOF
S_START, S_MAGIC, S_MIDDLE, S_EOF
typedef enum { S_EMPTY, S_EOF, S_NOPREV, S_NOTFOUND, S_SOF, S_WRAP } smsg_t;