summaryrefslogtreecommitdiffstats
path: root/libc/stdio
diff options
context:
space:
mode:
authorElliott Hughes <enh@google.com>2014-09-24 17:20:53 -0700
committerElliott Hughes <enh@google.com>2014-09-24 20:07:10 -0700
commitabefc93ff33afdb0e92e1fe9bd47a82b5e303e14 (patch)
treedb389de548059c1185c4dbf83d7a550ce1450051 /libc/stdio
parenta864e72b566234fdc41344725aa9b4f47c5baba3 (diff)
downloadbionic-abefc93ff33afdb0e92e1fe9bd47a82b5e303e14.zip
bionic-abefc93ff33afdb0e92e1fe9bd47a82b5e303e14.tar.gz
bionic-abefc93ff33afdb0e92e1fe9bd47a82b5e303e14.tar.bz2
Re-expose more stdio implementation details for LP32.
Keeps a variety of apps running. (cherry-pick of 5def2f5aecd968e4022b0afbe4441fa7ba3e7c7e.) Bug: 17047819 Change-Id: I55882ec95f2b59a5df76e5a89c23aa315609e01d
Diffstat (limited to 'libc/stdio')
-rw-r--r--libc/stdio/glue.h7
-rw-r--r--libc/stdio/local.h14
2 files changed, 9 insertions, 12 deletions
diff --git a/libc/stdio/glue.h b/libc/stdio/glue.h
index 81f83fc..4ead20a 100644
--- a/libc/stdio/glue.h
+++ b/libc/stdio/glue.h
@@ -42,8 +42,5 @@ struct glue {
FILE *iobs;
};
-#pragma GCC visibility push(hidden)
-
-extern struct glue __sglue;
-
-#pragma GCC visibility pop
+/* This was referenced by a couple of different pieces of middleware and the Crystax NDK. */
+__LIBC64_HIDDEN__ extern struct glue __sglue;
diff --git a/libc/stdio/local.h b/libc/stdio/local.h
index d777dec..eb84833 100644
--- a/libc/stdio/local.h
+++ b/libc/stdio/local.h
@@ -53,21 +53,24 @@ __LIBC64_HIDDEN__ int __srefill(FILE*);
/* This was referenced by the apportable middleware for LP32. */
__LIBC64_HIDDEN__ int __swsetup(FILE*);
+/* These were referenced by a couple of different pieces of middleware and the Crystax NDK. */
+__LIBC64_HIDDEN__ extern int __sdidinit;
+__LIBC64_HIDDEN__ int __sflags(const char*, int*);
+__LIBC64_HIDDEN__ FILE* __sfp(void);
+__LIBC64_HIDDEN__ void __sinit(void);
+__LIBC64_HIDDEN__ void __smakebuf(FILE*);
+
#pragma GCC visibility push(hidden)
int __sflush(FILE *);
int __sflush_locked(FILE *);
-FILE *__sfp(void);
int __sread(void *, char *, int);
int __swrite(void *, const char *, int);
fpos_t __sseek(void *, fpos_t, int);
int __sclose(void *);
-void __sinit(void);
void _cleanup(void);
-void __smakebuf(FILE *);
int __swhatbuf(FILE *, size_t *, int *);
int _fwalk(int (*)(FILE *));
-int __sflags(const char *, int *);
wint_t __fgetwc_unlock(FILE *);
wint_t __ungetwc(wint_t, FILE *);
int __vfprintf(FILE *, const char *, __va_list);
@@ -76,7 +79,6 @@ int __vfwprintf(FILE * __restrict, const wchar_t * __restrict, __va_list);
int __vfwscanf(FILE * __restrict, const wchar_t * __restrict, __va_list);
extern void __atexit_register_cleanup(void (*)(void));
-extern int __sdidinit;
/*
* Return true if the given FILE cannot be written now.
@@ -114,8 +116,6 @@ extern int __sdidinit;
#define NO_PRINTF_PERCENT_N
/* OpenBSD exposes these in <stdio.h>, but we only want them exposed to the implementation. */
-int __srget(FILE*);
-int __swbuf(int, FILE*);
#define __sfeof(p) (((p)->_flags & __SEOF) != 0)
#define __sferror(p) (((p)->_flags & __SERR) != 0)
#define __sclearerr(p) ((void)((p)->_flags &= ~(__SERR|__SEOF)))