* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- *
- * $Id$
+ */
+/** @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
/*
* used for buffer size calculations in channel.c
*/
+/** 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
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 */