Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 64611 Details for
Bug 100697
asterisk fails to load modules when compiled with ssp
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
asterisk-weak-reference.patch
asterisk-weak-reference.patch (text/plain), 8.21 KB, created by
Roy Marples (RETIRED)
on 2005-07-29 05:54:32 UTC
(
hide
)
Description:
asterisk-weak-reference.patch
Filename:
MIME Type:
Creator:
Roy Marples (RETIRED)
Created:
2005-07-29 05:54:32 UTC
Size:
8.21 KB
patch
obsolete
>diff -ru ../asterisk-1.0.9/include/asterisk/adsi.h ./include/asterisk/adsi.h >--- ../asterisk-1.0.9/include/asterisk/adsi.h 2005-07-29 13:22:39.003302450 +0100 >+++ ./include/asterisk/adsi.h 2005-07-29 13:41:41.000000000 +0100 >@@ -118,11 +118,14 @@ > * Returns 0 on success (or adsi unavailable) and -1 on hangup > * > */ >-extern int adsi_channel_init(struct ast_channel *chan); >+extern int adsi_channel_init(struct ast_channel *chan) >+ __attribute__ ((weak)); > >-extern int adsi_begin_download(struct ast_channel *chan, char *service, char *fdn, char *sec, int version); >+extern int adsi_begin_download(struct ast_channel *chan, char *service, char *fdn, char *sec, int version) >+ __attribute__ ((weak)); > >-extern int adsi_end_download(struct ast_channel *chan); >+extern int adsi_end_download(struct ast_channel *chan) >+ __attribute__ ((weak)); > > //! Restore ADSI initialization (for applications that play with ADSI > // and want to restore it to normal. If you touch "INFO" then you >@@ -133,7 +136,8 @@ > * Returns 0 on success (or adsi unavailable) and -1 on hangup > * > */ >-extern int adsi_channel_restore(struct ast_channel *chan); >+extern int adsi_channel_restore(struct ast_channel *chan) >+ __attribute__ ((weak)); > > //! Display some stuff on the screen > /*! >@@ -145,7 +149,8 @@ > * Return 0 on success (or adsi unavailable) and -1 on hangup > * > */ >-extern int adsi_print(struct ast_channel *chan, char **lines, int *align, int voice); >+extern int adsi_print(struct ast_channel *chan, char **lines, int *align, int voice) >+ __attribute__ ((weak)); > > //! Check if scripts for a given app are already loaded. Version may be -1 > // if any version is okay, or 0-255 for a specific version. >@@ -158,18 +163,23 @@ > * Returns 0 if scripts is not loaded or not an ADSI CPE. Returns -1 > * on hangup. Returns 1 if script already loaded. > */ >-extern int adsi_load_session(struct ast_channel *chan, unsigned char *app, int ver, int data); >-extern int adsi_unload_session(struct ast_channel *chan); >+extern int adsi_load_session(struct ast_channel *chan, unsigned char *app, int ver, int data) >+ __attribute__ ((weak)); >+extern int adsi_unload_session(struct ast_channel *chan) >+ __attribute__ ((weak)); > > /* ADSI Layer 2 transmission functions */ >-extern int adsi_transmit_messages(struct ast_channel *chan, unsigned char **msg, int *msglen, int *msgtype); >-extern int adsi_transmit_message(struct ast_channel *chan, unsigned char *msg, int msglen, int msgtype); >+extern int adsi_transmit_messages(struct ast_channel *chan, unsigned char **msg, int *msglen, int *msgtype) >+ __attribute__ ((weak)); >+extern int adsi_transmit_message(struct ast_channel *chan, unsigned char *msg, int msglen, int msgtype) >+ __attribute__ ((weak)); > > //! Read some encoded DTMF data. > /*! > * Returns number of bytes received > */ >-extern int adsi_read_encoded_dtmf(struct ast_channel *chan, unsigned char *buf, int maxlen); >+extern int adsi_read_encoded_dtmf(struct ast_channel *chan, unsigned char *buf, int maxlen) >+ __attribute__ ((weak)); > > /* ADSI Layer 3 creation functions */ > >@@ -183,14 +193,17 @@ > * > */ > >-extern int adsi_connect_session(unsigned char *buf, unsigned char *fdn, int ver); >+extern int adsi_connect_session(unsigned char *buf, unsigned char *fdn, int ver) >+ __attribute__ ((weak)); > > //! Build Query CPE ID of equipment */ > /*! > * Returns number of bytes added to message > */ >-extern int adsi_query_cpeid(unsigned char *buf); >-extern int adsi_query_cpeinfo(unsigned char *buf); >+extern int adsi_query_cpeid(unsigned char *buf) >+ __attribute__ ((weak)); >+extern int adsi_query_cpeinfo(unsigned char *buf) >+ __attribute__ ((weak)); > > //! Get CPE ID from an attached ADSI compatible CPE. > /*! >@@ -198,9 +211,11 @@ > * or -1 on hangup, or 0 if there was no hangup but it failed to find the > * device ID. Returns to voice mode if "voice" is non-zero. > */ >-extern int adsi_get_cpeid(struct ast_channel *chan, unsigned char *cpeid, int voice); >+extern int adsi_get_cpeid(struct ast_channel *chan, unsigned char *cpeid, int voice) >+ __attribute__ ((weak)); > >-extern int adsi_get_cpeinfo(struct ast_channel *chan, int *width, int *height, int *buttons, int voice); >+extern int adsi_get_cpeinfo(struct ast_channel *chan, int *width, int *height, int *buttons, int voice) >+ __attribute__ ((weak)); > > //! Begin an ADSI script download */ > /*! >@@ -214,7 +229,8 @@ > * > */ > >-extern int adsi_download_connect(unsigned char *buf, unsigned char *service, unsigned char *fdn, unsigned char *sec, int ver); >+extern int adsi_download_connect(unsigned char *buf, unsigned char *service, unsigned char *fdn, unsigned char *sec, int ver) >+ __attribute__ ((weak)); > > //! Disconnects a running session > /*! >@@ -223,7 +239,8 @@ > * Returns number of bytes added to buffer or -1 on error. > * > */ >-extern int adsi_disconnect_session(unsigned char *buf); >+extern int adsi_disconnect_session(unsigned char *buf) >+ __attribute__ ((weak)); > > //! Disconnects (and hopefully saves) a downloaded script > /*! >@@ -232,7 +249,8 @@ > * Returns number of bytes added to buffer or -1 on error. > * > */ >-extern int adsi_download_disconnect(unsigned char *buf); >+extern int adsi_download_disconnect(unsigned char *buf) >+ __attribute__ ((weak)); > > //! Puts CPE in data mode... > /*! >@@ -241,9 +259,12 @@ > * Returns number of bytes added to buffer or -1 on error. > * > */ >-extern int adsi_data_mode(unsigned char *buf); >-extern int adsi_clear_soft_keys(unsigned char *buf); >-extern int adsi_clear_screen(unsigned char *buf); >+extern int adsi_data_mode(unsigned char *buf) >+ __attribute__ ((weak)); >+extern int adsi_clear_soft_keys(unsigned char *buf) >+ __attribute__ ((weak)); >+extern int adsi_clear_screen(unsigned char *buf) >+ __attribute__ ((weak)); > > //! Puts CPE in voice mode... > /*! >@@ -253,14 +274,16 @@ > * Returns number of bytes added to buffer or -1 on error. > * > */ >-extern int adsi_voice_mode(unsigned char *buf, int when); >+extern int adsi_voice_mode(unsigned char *buf, int when) >+ __attribute__ ((weak)); > > //! Returns non-zero if Channel does or might support ADSI > /*! > * \param chan Channel to check > * > */ >-extern int adsi_available(struct ast_channel *chan); >+extern int adsi_available(struct ast_channel *chan) >+ __attribute__ ((weak)); > > //! Loads a line of info into the display */ > /*! >@@ -276,7 +299,8 @@ > * > */ > >-extern int adsi_display(unsigned char *buf, int page, int line, int just, int wrap, unsigned char *col1, unsigned char *col2); >+extern int adsi_display(unsigned char *buf, int page, int line, int just, int wrap, unsigned char *col1, unsigned char *col2) >+ __attribute__ ((weak)); > > //! Sets the current line and page */ > /*! >@@ -288,7 +312,8 @@ > * > */ > >-extern int adsi_set_line(unsigned char *buf, int page, int line); >+extern int adsi_set_line(unsigned char *buf, int page, int line) >+ __attribute__ ((weak)); > > //! Creates "load soft key" parameters > /*! >@@ -302,7 +327,8 @@ > * Returns number of bytes added to buffer or -1 on error. > * > */ >-extern int adsi_load_soft_key(unsigned char *buf, int key, unsigned char *llabel, unsigned char *slabel, unsigned char *ret, int data); >+extern int adsi_load_soft_key(unsigned char *buf, int key, unsigned char *llabel, unsigned char *slabel, unsigned char *ret, int data) >+ __attribute__ ((weak)); > > //! Set which soft keys should be displayed > /*! >@@ -313,7 +339,8 @@ > * Returns number of bytes added to buffer or -1 on error. > * > */ >-extern int adsi_set_keys(unsigned char *buf, unsigned char *keys); >+extern int adsi_set_keys(unsigned char *buf, unsigned char *keys) >+ __attribute__ ((weak)); > > //! Set input information > /*! >@@ -327,7 +354,8 @@ > * Returns number of bytes added to buffer or -1 on error. > * > */ >-extern int adsi_input_control(unsigned char *buf, int page, int line, int display, int format, int just); >+extern int adsi_input_control(unsigned char *buf, int page, int line, int display, int format, int just) >+ __attribute__ ((weak)); > > //! Set input format > /*! >@@ -341,5 +369,6 @@ > * Returns number of bytes added to buffer or -1 on error. > * > */ >-extern int adsi_input_format(unsigned char *buf, int num, int dir, int wrap, unsigned char *format1, unsigned char *format2); >+extern int adsi_input_format(unsigned char *buf, int num, int dir, int wrap, unsigned char *format1, unsigned char *format2) >+ __attribute__ ((weak)); > #endif >Only in ../asterisk-1.0.9: .version
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 100697
: 64611