diff options
author | Matt Fleming <matt.fleming@intel.com> | 2012-12-04 21:17:47 +0000 |
---|---|---|
committer | Matt Fleming <matt.fleming@intel.com> | 2012-12-05 22:41:32 +0000 |
commit | e4b3ce2dd82ce2da85c37fd3f332ec2eb802b734 (patch) | |
tree | 8b98440a37716dab0bd4de8b87a3800e5a40b07b /com32/elflink/ldlinux/readconfig.c | |
parent | a79ceb45909434d392aacbb92eb2dfa738479783 (diff) | |
download | syslinux-e4b3ce2dd82ce2da85c37fd3f332ec2eb802b734.tar.gz syslinux-e4b3ce2dd82ce2da85c37fd3f332ec2eb802b734.tar.xz syslinux-e4b3ce2dd82ce2da85c37fd3f332ec2eb802b734.zip |
Symbol export whitelist
Before modules were dynamically loaded the boundary between GPL and
non-GPL code was implicit because of the separate link domains for
each module. With dynamic modules we need an explicit whitelist of
core symbols that non-GPL code can link against at runtime without
needing to be re-licensed under the GPL.
Mark such symbols with __export, so that it is explicitly clear which
symbols in the core can be linked against by non-GPL code.
Reduce the visibility of symbols in both the core and ldlinux.c32 with
-fvisibility=hidden. __export changes the visibility to 'default'.
Signed-off-by: Matt Fleming <matt.fleming@intel.com>
Diffstat (limited to 'com32/elflink/ldlinux/readconfig.c')
-rw-r--r-- | com32/elflink/ldlinux/readconfig.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/com32/elflink/ldlinux/readconfig.c b/com32/elflink/ldlinux/readconfig.c index 7411fcaf..6a419c6d 100644 --- a/com32/elflink/ldlinux/readconfig.c +++ b/com32/elflink/ldlinux/readconfig.c @@ -82,10 +82,11 @@ short vkernel = 0; //have we seen any "label" statements? short displaycon = 1; //conio.inc extern short NoHalt; //idle.c -const char *default_cmd = NULL; //"default" command line const char *onerror = NULL; //"onerror" command line const char *ontimeout = NULL; //"ontimeout" command line +__export const char *default_cmd = NULL; //"default" command line + /* Empty refstring */ const char *empty_string; @@ -599,7 +600,7 @@ uint32_t parse_argb(char **p) //static const char *append = NULL; extern const char *append; //static unsigned int ipappend = 0; -unsigned int ipappend = 0; +__export unsigned int ipappend = 0; extern uint16_t PXERetry; static struct labeldata ld; |