NNTPC: NNTpcache diff for authentification

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



With this diff its possible to create a authinfo for each defined
server. to get this work you have to add after the timeout vals of each
server an entry with username and password. if you dont need
authentification you have to add none to both. This isn't currently thze
best implementation but it works for us. If somebody knows more about
how nntpcache works he could improve it. I hope it will be a standard in
the next release
peter
diff nntpcache-1.0.6/ll.h nntpcache-1.0.6/ll.h
40a41,42
>     char *user;                       /* der User auf dem Server/
falls NULL keine authinfo */
>     char *pass;         /* passwort auf dem server */
diff nntpcache-1.0.6/nntpcache.c nntpcache-1.0.6/nntpcache.c
298,299c298,303
<               char host[MAX_HOST], us[MAX_HOST], active_timeoutS[32],
active_times_timeoutS[32], newsgroups_timeoutS[32], group_timeoutS[32],
xover_timeoutS[32], article_timeoutS[32];
<               int active_timeout, active_times_timeout,
newsgroups_timeout, group_timeout, xover_timeout, article_timeout;
---
>               char host[MAX_HOST], us[MAX_HOST], active_timeoutS[32],
>              active_times_timeoutS[32], newsgroups_timeoutS[32],
>              group_timeoutS[32], xover_timeoutS[32],
article_timeoutS[32],
>                        usernameS[32], passwdS[32];
>               int active_timeout, active_times_timeout,
newsgroups_timeout,
>             group_timeout, xover_timeout, article_timeout;
320c324,327
<               if (sscanf(buf, "%127s %127s %31s %31s %31s %31s %31s
%31[^\t\r\n ]s", host, us, active_timeoutS, active_times_timeoutS,
newsgroups_timeoutS, group_timeoutS, xover_timeoutS, article_timeoutS)
!= 8)
---
>               if (sscanf(buf, "%127s %127s %31s %31s %31s %31s %31s
%31s %31s %31[^\t\r\n ]s",
>              host, us, active_timeoutS, active_times_timeoutS,
>              newsgroups_timeoutS, group_timeoutS, xover_timeoutS,
>              article_timeoutS, usernameS, passwdS) != 10)
379a387,396
>               list->user = NULL;              /* default no User */
>               list->pass = NULL;      /* default no Passwd */
>            logw(("org %s ! %s",passwdS,usernameS));
>
>         if (!strEq(usernameS, "none")) {      /* test if Username
defined */
>            list->pass=Sstrdup(passwdS);           /* alloc Passw
space */
>                  list->user=Sstrdup(usernameS);         /* alloc
Username */
>            logw(("Name %s ! %s",list->pass, list->user));
>            logw(("org %s ! %s",passwdS,usernameS));
>         }
380a398
>
diff nntpcache-1.0.6/sockets.c nntpcache-1.0.6/sockets.c
98c98,99
<        */
---
>        */
>
102a104,117
>
>     if (scfg->user != NULL) {  /* do we need authentification */
>       fprintf(scfg->fh,"AUTHINFO USER %s\r\n",scfg->user);
>       fflush(scfg->fh);
>       if (!Cfget(scfg, buf, sizeof buf))
>          goto dropped;
>       logw(("AUTHINFO USER %s",scfg->user));
>       fprintf(scfg->fh,"AUTHINFO PASS %s\r\n",scfg->pass);
>       fflush(scfg->fh);
>       if (!Cfget(scfg, buf, sizeof buf))
>          goto dropped;
>       logw(("AUTHINFO PASS %s",scfg->pass));
>     }
>
--
Message of the day:
~!
----
EDAG-Fulda | P. Katzmann | E-Planung | Steinauer Str.| 36003 Fulda
PO.BOX 340 | tel.  +49 661 6000-464  | fax -5922      | W. Germany
in: pet@informatik.ee.edag.de
    peter.katzmann@edag.de


[Index of Archives]     [Yosemite]     [Yosemite Campsites]     [Bugtraq]     [Linux]     [Trn]

Powered by Linux