Module: ngircd.git Branch: master Commit: 9bc5d565bbbd1131aaa7608076598167036f261b URL: http://ngircd.barton.de/cgi-bin/gitweb.cgi?p=ngircd.git&a=commit;h=9bc5d...
Author: Alexander Barton alex@barton.de Date: Thu Nov 11 12:39:19 2010 +0100
Save channel creation time; new function Channel_CreationTime()
---
src/ngircd/channel.c | 11 +++++++++++ src/ngircd/channel.h | 2 ++ 2 files changed, 13 insertions(+), 0 deletions(-)
diff --git a/src/ngircd/channel.c b/src/ngircd/channel.c index 175f23b..edbbc38 100644 --- a/src/ngircd/channel.c +++ b/src/ngircd/channel.c @@ -697,6 +697,14 @@ Channel_TopicWho(CHANNEL *Chan) return Chan->topic_who; } /* Channel_TopicWho */
+ +GLOBAL unsigned int +Channel_CreationTime(CHANNEL *Chan) +{ + assert(Chan != NULL); + return (unsigned int) Chan->creation_time; +} /* Channel_CreationTime */ + #endif
@@ -834,6 +842,9 @@ Channel_Create( const char *Name ) strlcpy( c->name, Name, sizeof( c->name )); c->hash = Hash( c->name ); c->next = My_Channels; +#ifndef STRICT_RFC + c->creation_time = time(NULL); +#endif My_Channels = c; LogDebug("Created new channel structure for "%s".", Name); return c; diff --git a/src/ngircd/channel.h b/src/ngircd/channel.h index 46e7e13..030f910 100644 --- a/src/ngircd/channel.h +++ b/src/ngircd/channel.h @@ -30,6 +30,7 @@ typedef struct _CHANNEL char modes[CHANNEL_MODE_LEN]; /* Channel modes */ array topic; /* Topic of the channel */ #ifndef STRICT_RFC + time_t creation_time; /* Channel creation time */ time_t topic_time; /* Time when topic was set */ char topic_who[CLIENT_NICK_LEN];/* Nickname of user that set topic */ #endif @@ -118,6 +119,7 @@ GLOBAL CHANNEL *Channel_Create PARAMS(( const char *Name )); #ifndef STRICT_RFC GLOBAL unsigned int Channel_TopicTime PARAMS(( CHANNEL *Chan )); GLOBAL char *Channel_TopicWho PARAMS(( CHANNEL *Chan )); +GLOBAL unsigned int Channel_CreationTime PARAMS(( CHANNEL *Chan )); #endif
GLOBAL bool Channel_AddInvite PARAMS((CHANNEL *c, const char *Mask, bool OnlyOnce ));
ngircd-commits@lists.barton.de