Hmmm... The isofs session option code looks dodgy. It's parsed like this: case Opt_session: if (match_int(&args[0], &option)) return 0; n = option; if (n > 99) return 0; popt->session = n + 1; <--- increment break; and then used like this: if(session >= 0 && session <= 99) { but popt->session is either -1 or in the range 1-100. David