Patch to make CenterICQ detect keystrokes in any terminal owned by $USER on BSD systems. // danne@wiberg.nu --- kksystr-0.1/src/kkiproc.cc.orig Sat Feb 19 20:20:03 2005 +++ kksystr-0.1/src/kkiproc.cc Sun Feb 20 13:33:34 2005 @@ -97,6 +97,32 @@ } #else +#ifdef BSD + + char *user; + char p[256]; + struct utmp usr; + FILE *ufp; + + user=getenv("USER"); + ufp = fopen(_PATH_UTMP, "r"); + + while (fread((char *)&usr, sizeof(usr), 1, ufp) == 1) { + if (*usr.ut_name && *usr.ut_line) { + if(!strcmp(user,usr.ut_name)) { + sprintf(p,"/dev/%s", usr.ut_line); + if(!stat(p, &s) && s.st_atime > t) + t = s.st_atime; + } + } + } + + fclose(ufp); + + if(t==0) + time(&t); + +#else char *p; @@ -106,6 +132,7 @@ time(&t); } +#endif #endif return t;