回精華區
作者itoc, 信區: itoc
標題[功能] expire 寫進 .BRD [expire.c部分]
時間03/08/17
作者: Kudo (淡蛋~~) 看板: plan
標題: [功能] expire 寫進 .BRD [expire.c部分]
時間: Thu Apr 11 04:36:28 2002                          Updated: 2004/04/30

: expire.c

- #define DEF_DAYS        365             /* 預設清除超過 365 天的文章 */
- #define DEF_MAXP        3000            /* 預設清除超過 3000 篇的文章 */
- #define DEF_MINP        150             /* 預設低於 150 篇的看板不砍文章 */

: expire.c:main()

int
main(argc, argv)
  int argc;
  char *argv[];
{
  FILE *fp;
  int number, count;
  Life db, table[MAXBOARD], *key;
- char *ptr, *bname, buf[256];
+ char *bname, buf[256];
  BRD *brdp, *bend;

  ...
  ...

  init_bshm();

  count = 0;
- if (fp = fopen(FN_ETC_EXPIRE, "r"))
- {
-   ...
-   fclose(fp);
- }
+ brdp = bshm->bcache;
+ bend = brdp + bshm->number;
+ do
+ {
+   if (!brdp->brdname[0])
+     continue;
+   strcpy(table[count].bname, brdp->brdname);
+   table[count].days = ((argc > 1) && (number = atoi(argv[1])) > 0) ?
+     number : brdp->maxtime;
+   table[count].maxp = ((argc > 2) && (number = atoi(argv[2])) > 0) ?
+     number : brdp->maxpost;
+   table[count].minp = ((argc > 3) && (number = atoi(argv[3])) > 0) ?
+     number : brdp->minpost;
+   count++;
+ } while (++brdp < bend);

  if (count > 1)
  {
    qsort(table, count, sizeof(Life), life_cmp);
  }

--
Chih-Kuan Chien (Kudo)
kudo@ms21.url.com.tw

--
□ Origin: 淡蛋的小窩 bbs.kudo.idv.tw
□ From: www.kudo.idv.tw
精華選讀←離開[主題上]主題下(k)上篇(j)下篇S/a搜尋 G串列 TAB精華 ↑↓捲 Pg/Space翻