Some libc implementations don't have the getline function but instead have an equivalent fgetln function.
Add code to detect both and use whatever is available. Signed-off-by: Stéphane Graber <stgra...@ubuntu.com> --- configure.ac | 3 +++ src/lxc/attach.c | 5 +++++ src/lxc/parse.c | 5 +++++ 3 files changed, 13 insertions(+) diff --git a/configure.ac b/configure.ac index 9b4c4b2..960d610 100644 --- a/configure.ac +++ b/configure.ac @@ -215,6 +215,9 @@ AC_CHECK_DECLS([PR_CAPBSET_DROP], [], [], [#include <sys/prctl.h>]) # Check for optional headers AC_CHECK_HEADERS([sys/signalfd.h]) +# Check for some functions +AC_CHECK_FUNCS([getline fgetln]) + # Check for some standard binaries AC_PROG_GCC_TRADITIONAL AC_PROG_SED diff --git a/src/lxc/attach.c b/src/lxc/attach.c index ec0e083..9adb8f9 100644 --- a/src/lxc/attach.c +++ b/src/lxc/attach.c @@ -80,7 +80,12 @@ struct lxc_proc_context_info *lxc_proc_get_context_info(pid_t pid) } found = 0; + + #ifdef HAVE_GETLINE while (getline(&line, &line_bufsz, proc_file) != -1) { + #else + while ((line = fgetln(proc_file, &line_bufsz))) { + #endif ret = sscanf(line, "CapBnd: %llx", &info->capability_mask); if (ret != EOF && ret > 0) { found = 1; diff --git a/src/lxc/parse.c b/src/lxc/parse.c index 10510c9..cc6f146 100644 --- a/src/lxc/parse.c +++ b/src/lxc/parse.c @@ -29,6 +29,7 @@ #include <dirent.h> #include "parse.h" +#include "config.h" #include <lxc/log.h> lxc_log_define(lxc_parse, lxc); @@ -79,7 +80,11 @@ int lxc_file_for_each_line(const char *file, lxc_file_cb callback, void *data) return -1; } + #ifdef HAVE_GETLINE while (getline(&line, &len, f) != -1) { + #else + while ((line = fgetln(f, &len))) { + #endif err = callback(line, data); if (err) break; -- 1.8.0 ------------------------------------------------------------------------------ Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS, MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft MVPs and experts. ON SALE this month only -- learn more at: http://p.sf.net/sfu/learnmore_122712 _______________________________________________ Lxc-devel mailing list Lxc-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-devel