Mon, 16 Apr 2007 00:43:53 +0000
Commit a proper copy of this binary file. The old one was corrupted,
probably due to missing SVN attributes.
This was retrieved from the following URL, though we may have it in CVS:
http://dev.openwengo.com/trac/openwengo/trac.cgi/browser/vendors/gaim/trunk/doc/oscar/On_Sending_Files_via_OSCAR.odt?rev=4273
| 6508 | 1 | #ifndef _GAIM_PERL_COMMON_H_ |
| 2 | #define _GAIM_PERL_COMMON_H_ | |
| 3 | ||
|
6816
b14a3043ed09
[gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents:
6566
diff
changeset
|
4 | #include <glib.h> |
|
b14a3043ed09
[gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents:
6566
diff
changeset
|
5 | #ifdef _WIN32 |
|
b14a3043ed09
[gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents:
6566
diff
changeset
|
6 | #undef pipe |
|
b14a3043ed09
[gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents:
6566
diff
changeset
|
7 | #endif |
|
6520
5386692555c9
[gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
6508
diff
changeset
|
8 | #include <XSUB.h> |
|
5386692555c9
[gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
6508
diff
changeset
|
9 | #include <EXTERN.h> |
|
5386692555c9
[gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
6508
diff
changeset
|
10 | #include <perl.h> |
|
5386692555c9
[gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
6508
diff
changeset
|
11 | |
| 12872 | 12 | #include "plugin.h" |
|
6566
61eb35202526
[gaim-migrate @ 7088]
Christian Hammond <chipx86@chipx86.com>
parents:
6531
diff
changeset
|
13 | #include "value.h" |
|
61eb35202526
[gaim-migrate @ 7088]
Christian Hammond <chipx86@chipx86.com>
parents:
6531
diff
changeset
|
14 | |
| 6508 | 15 | #define is_hvref(o) \ |
| 16 | ((o) && SvROK(o) && SvRV(o) && (SvTYPE(SvRV(o)) == SVt_PVHV)) | |
| 17 | ||
| 18 | #define hvref(o) \ | |
| 19 | (is_hvref(o) ? (HV *)SvRV(o) : NULL); | |
| 20 | ||
|
12419
745d9e5460ea
[gaim-migrate @ 14726]
Richard Laager <rlaager@pidgin.im>
parents:
11170
diff
changeset
|
21 | #define GAIM_PERL_BOOT_PROTO(x) \ |
|
12497
a17568773be3
[gaim-migrate @ 14809]
Richard Laager <rlaager@pidgin.im>
parents:
12419
diff
changeset
|
22 | void boot_Gaim__##x(pTHX_ CV *cv); |
|
12419
745d9e5460ea
[gaim-migrate @ 14726]
Richard Laager <rlaager@pidgin.im>
parents:
11170
diff
changeset
|
23 | |
| 6508 | 24 | #define GAIM_PERL_BOOT(x) \ |
|
12419
745d9e5460ea
[gaim-migrate @ 14726]
Richard Laager <rlaager@pidgin.im>
parents:
11170
diff
changeset
|
25 | gaim_perl_callXS(boot_Gaim__##x, cv, mark) |
| 6508 | 26 | |
| 12872 | 27 | typedef struct |
| 28 | { | |
| 29 | GaimPlugin *plugin; | |
| 30 | char *package; | |
| 31 | char *load_sub; | |
| 32 | char *unload_sub; | |
| 33 | char *prefs_sub; | |
| 34 | char *gtk_prefs_sub; | |
| 12988 | 35 | char *plugin_action_sub; |
| 12872 | 36 | } GaimPerlScript; |
| 37 | ||
| 11170 | 38 | void gaim_perl_normalize_script_name(char *name); |
| 39 | ||
|
6566
61eb35202526
[gaim-migrate @ 7088]
Christian Hammond <chipx86@chipx86.com>
parents:
6531
diff
changeset
|
40 | SV *newSVGChar(const char *str); |
|
61eb35202526
[gaim-migrate @ 7088]
Christian Hammond <chipx86@chipx86.com>
parents:
6531
diff
changeset
|
41 | |
| 6508 | 42 | void gaim_perl_callXS(void (*subaddr)(pTHX_ CV *cv), CV *cv, SV **mark); |
| 43 | void gaim_perl_bless_plain(const char *stash, void *object); | |
| 44 | SV *gaim_perl_bless_object(void *object, const char *stash); | |
| 45 | gboolean gaim_perl_is_ref_object(SV *o); | |
| 46 | void *gaim_perl_ref_object(SV *o); | |
| 47 | ||
|
6520
5386692555c9
[gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
6508
diff
changeset
|
48 | int execute_perl(const char *function, int argc, char **args); |
|
5386692555c9
[gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
6508
diff
changeset
|
49 | |
|
6566
61eb35202526
[gaim-migrate @ 7088]
Christian Hammond <chipx86@chipx86.com>
parents:
6531
diff
changeset
|
50 | #if 0 |
|
61eb35202526
[gaim-migrate @ 7088]
Christian Hammond <chipx86@chipx86.com>
parents:
6531
diff
changeset
|
51 | gboolean gaim_perl_value_from_sv(GaimValue *value, SV *sv); |
|
61eb35202526
[gaim-migrate @ 7088]
Christian Hammond <chipx86@chipx86.com>
parents:
6531
diff
changeset
|
52 | SV *gaim_perl_sv_from_value(const GaimValue *value); |
|
61eb35202526
[gaim-migrate @ 7088]
Christian Hammond <chipx86@chipx86.com>
parents:
6531
diff
changeset
|
53 | #endif |
|
61eb35202526
[gaim-migrate @ 7088]
Christian Hammond <chipx86@chipx86.com>
parents:
6531
diff
changeset
|
54 | |
|
6920
4f4931b005cb
[gaim-migrate @ 7467]
Christian Hammond <chipx86@chipx86.com>
parents:
6816
diff
changeset
|
55 | void *gaim_perl_data_from_sv(GaimValue *value, SV *sv); |
|
4f4931b005cb
[gaim-migrate @ 7467]
Christian Hammond <chipx86@chipx86.com>
parents:
6816
diff
changeset
|
56 | SV *gaim_perl_sv_from_vargs(const GaimValue *value, va_list *args, |
| 12871 | 57 | void ***copy_arg); |
|
6566
61eb35202526
[gaim-migrate @ 7088]
Christian Hammond <chipx86@chipx86.com>
parents:
6531
diff
changeset
|
58 | |
| 6508 | 59 | #endif /* _GAIM_PERL_COMMON_H_ */ |