File: irc.h

package info (click to toggle)
bopm 3.1.2-12
  • links: PTS
  • area: main
  • in suites: etch, etch-m68k
  • size: 2,964 kB
  • ctags: 1,345
  • sloc: ansic: 8,611; sh: 7,456; yacc: 461; perl: 429; lex: 232; makefile: 124; php: 64
file content (52 lines) | stat: -rw-r--r-- 812 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#ifndef IRC_H
#define IRC_H

#include "inet.h"

#define NICKMAX 32 + 1
#define MSGLENMAX 512 + 1


struct bopm_sockaddr
{
   struct sockaddr_in sa4;
};


struct bopm_ircaddr
{
   struct in_addr in4;
};


struct UserInfo
{
   char *irc_nick;
   char *irc_username;
   char *irc_hostname;
};

typedef void (*irc_command) (char **, unsigned int, char *, struct UserInfo *);

struct CommandHash
{
   char       *command;
   irc_command handler;
};


extern void irc_send(char *, ...);
extern void irc_send_channels(char *, ...);
extern void irc_cycle(void);
extern void irc_timer(void);


#define copy_s_addr(a, b)  \
do { \
((uint32_t *)a)[0] = ((uint32_t *)b)[0]; \
((uint32_t *)a)[1] = ((uint32_t *)b)[1]; \
((uint32_t *)a)[2] = ((uint32_t *)b)[2]; \
((uint32_t *)a)[3] = ((uint32_t *)b)[3]; \
} while(0)

#endif