added basic ssl support to ircu
[ircu2.10.12-pk.git] / include / numnicks.h
index 5a435a453b9811ad395c508c96b8fd300bc31ac7..c6e42699d4676a8fef9d42438196b763d5f5952e 100644 (file)
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
-
+/** @file
+ * @brief Interface for numeric nickname functions.
+ * @version $Id$
+ */
 #ifndef INCLUDED_numnicks_h
 #define INCLUDED_numnicks_h
+#ifndef INCLUDED_client_h
+#include "client.h"
+#endif
 #ifndef INCLUDED_sys_types_h
 #include <sys/types.h>
 #define INCLUDED_sys_types_h
 #endif
 
-/*=============================================================================
+/*
  * General defines
  */
 
 /*
  * used for buffer size calculations in channel.c
  */
-#define NUMNICKLEN 5           /* strlen("YYXXX") */
+/** Maximum length of a full user numnick. */
+#define NUMNICKLEN 5            /* strlen("YYXXX") */
 
-/*=============================================================================
+/*
  * Macros
  */
 
-/*
+/** Provide format string arguments for a user's numnick.
  * Use this macro as follows: sprintf(buf, "%s%s ...", NumNick(cptr), ...);
  */
-#define NumNick(c) (c)->user->server->yxx, (c)->yxx
+#define NumNick(c) cli_yxx((cli_user(c))->server), cli_yxx(c)
 
-/*
+/** Provide format string arguments for a server's numnick.
  * Use this macro as follows: sprintf(buf, "%s ...", NumServ(cptr), ...);
  */
-#define NumServ(c) (c)->yxx
+#define NumServ(c) cli_yxx(c)
 
-/*
+/** Provide format string arguments for a server's capacity mask.
  * Use this macro as follows: sprintf(buf, "%s%s ...", NumServCap(cptr), ...);
  */
-#define NumServCap(c) (c)->yxx, (c)->serv->nn_capacity
+#define NumServCap(c) cli_yxx(c), (cli_serv(c))->nn_capacity
 
-/*=============================================================================
+/*
  * Structures
  */
 struct Client;
 
-/*=============================================================================
+/*
  * Proto types
  */
-extern int SetRemoteNumNick(struct Client *cptr, const char *yxx);
-extern void SetLocalNumNick(struct Client *cptr);
-extern void RemoveYXXClient(struct Client *server, const char *yxx);
-extern void SetServerYXX(struct Client *cptr,
-    struct Client *server, const char *yxx);
-extern void ClearServerYXX(const struct Client *server);
+extern void SetRemoteNumNick(struct Client* cptr, const char* yxx);
+extern int  SetLocalNumNick(struct Client* cptr);
+extern void RemoveYXXClient(struct Client* server, const char* yxx);
+extern void SetServerYXX(struct Client* cptr, 
+                         struct Client* server, const char* yxx);
+extern void ClearServerYXX(const struct Clientserver);
 
-extern void SetYXXCapacity(struct Client *myself, size_t max_clients);
-extern void SetYXXServerName(struct Client *myself, unsigned int numeric);
+extern void SetYXXCapacity(struct Client* myself, unsigned int max_clients);
+extern void SetYXXServerName(struct Clientmyself, unsigned int numeric);
 
-extern int markMatchexServer(const char *cmask, int minlen);
-extern struct Client *find_match_server(char *mask);
-extern struct Client *findNUser(const char *yxx);
-extern struct Client *FindNServer(const char *numeric);
+extern int            markMatchexServer(const char* cmask, int minlen);
+extern struct Client* find_match_server(char* mask);
+extern struct Client* findNUser(const char* yxx);
+extern struct Client* FindNServer(const char* numeric);
 
-extern unsigned int base64toint(const char *str);
-extern const char *inttobase64(char *buf, unsigned int v, size_t count);
-
-#ifndef NO_PROTOCOL9
-extern const char *CreateNNforProtocol9server(const struct Client *server);
-#endif
+extern unsigned int   base64toint(const char* str);
+extern const char*    inttobase64(char* buf, unsigned int v, unsigned int count);
+extern const char* iptobase64(char* buf, const struct irc_in_addr* addr, unsigned int count, int v6_ok);
+extern void base64toip(const char* s, struct irc_in_addr* addr);
 
 #endif /* INCLUDED_numnicks_h */
+