-
-void DeleteRssCfg(void *vptr)
-{
- rss_aggregator *rncptr = (rss_aggregator *)vptr;
- AsyncIO *IO = &rncptr->IO;
- EVM_syslog(LOG_DEBUG, "RSS: destroying\n");
-
- FreeStrBuf(&rncptr->Url);
- FreeStrBuf(&rncptr->rooms);
- FreeStrBuf(&rncptr->CData);
- FreeStrBuf(&rncptr->Key);
- FreeStrBuf(&rncptr->IO.HttpReq.ReplyData);
- DeleteHash(&rncptr->OtherQRnumbers);
- FreeURL(&rncptr->IO.ConnectMe);
-
- DeleteHashPos (&rncptr->Pos);
- DeleteHash (&rncptr->Messages);
- if (rncptr->recp.recp_room != NULL)
- free(rncptr->recp.recp_room);
-
-
- if (rncptr->Item != NULL)
- {
- FreeStrBuf(&rncptr->Item->guid);
- FreeStrBuf(&rncptr->Item->title);
- FreeStrBuf(&rncptr->Item->link);
- FreeStrBuf(&rncptr->Item->linkTitle);
- FreeStrBuf(&rncptr->Item->reLink);
- FreeStrBuf(&rncptr->Item->reLinkTitle);
- FreeStrBuf(&rncptr->Item->description);
- FreeStrBuf(&rncptr->Item->channel_title);
- FreeStrBuf(&rncptr->Item->author_or_creator);
- FreeStrBuf(&rncptr->Item->author_url);
- FreeStrBuf(&rncptr->Item->author_email);
-
- free(rncptr->Item);
- }
- free(rncptr);
-}
-
-eNextState RSSAggregator_Terminate(AsyncIO *IO)
-{
- rss_aggregator *rncptr = (rss_aggregator *)IO->Data;
-
- EVM_syslog(LOG_DEBUG, "RSS: Terminating.\n");
-
-
- UnlinkRSSAggregator(rncptr);
- return eAbort;
-}
-eNextState RSSAggregator_ShutdownAbort(AsyncIO *IO)
-{
- const char *pUrl;
- rss_aggregator *rncptr = (rss_aggregator *)IO->Data;
-
- pUrl = IO->ConnectMe->PlainUrl;
- if (pUrl == NULL)
- pUrl = "";
-
- EV_syslog(LOG_DEBUG, "RSS: Aborting by shutdown: %s.\n", pUrl);
-
-
- UnlinkRSSAggregator(rncptr);
- return eAbort;
-}
-