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 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83
|
static const char fileIdent[] = "$Id: perlglue.xs,v 1.8 2009/03/28 21:00:42 kretch Exp $";
#ifdef HAVE_LIBZEPHYR
#include <zephyr/zephyr.h>
#endif
#include <EXTERN.h>
#include <perl.h>
#include <XSUB.h>
/* Yeah, we should just include owl.h, but curses and perl don't play nice. */
extern char *owl_function_command(char *cmd);
extern void owl_free(void *x);
extern SV *owl_perlconfig_curmessage2hashref();
extern int owl_zwrite_create_and_send_from_line(char *, char *);
extern char *owl_function_ztext_stylestrip(char *);
extern void g;
extern int owl_global_get_cols(void*);
extern char *owl_zephyr_get_realm();
extern char *owl_zephyr_get_sender();
MODULE = owl PACKAGE = owl
char *
command(cmd)
char *cmd
PREINIT:
char *rv = NULL;
CODE:
rv = owl_function_command(cmd);
RETVAL = rv;
OUTPUT:
RETVAL
CLEANUP:
if (rv) owl_free(rv);
SV *
getcurmsg()
CODE:
ST(0) = owl_perlconfig_curmessage2hashref();
int
getnumcols()
CODE:
RETVAL = owl_global_get_cols(&g);
OUTPUT:
RETVAL
char *
zephyr_getrealm()
CODE:
RETVAL = owl_zephyr_get_realm();
OUTPUT:
RETVAL
char *
zephyr_getsender()
CODE:
RETVAL = owl_zephyr_get_sender();
OUTPUT:
RETVAL
void
zephyr_zwrite(cmd,msg)
char *cmd
char *msg
PREINIT:
int i;
CODE:
i = owl_zwrite_create_and_send_from_line(cmd, msg);
char *
ztext_stylestrip(ztext)
char *ztext
PREINIT:
char *rv = NULL;
CODE:
rv = owl_function_ztext_stylestrip(ztext);
RETVAL = rv;
OUTPUT:
RETVAL
CLEANUP:
if (rv) owl_free(rv);
|