From 0ffd58b223e24779420130522ea8ee359505f493 Mon Sep 17 00:00:00 2001
From: Gang He <ghe@suse.com>
Date: Mon, 4 Sep 2017 14:08:59 +0800
Subject: [PATCH] fsck.ocfs2: fix compile error when glibc upgrade
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

When glibc upgrade to glibc-2.26.90-14, there was a compile error in fsck.ocfs2,
the compile error messages like,

In file included from /usr/include/string.h:431:0,
                 from ../include/ocfs2/ocfs2.h:41,
                 from pass4.c:32:
include/strings.h:37:1: error: unknown type name ‘errcode_t’; did you mean ‘mode_t’?
 errcode_t o2fsck_strings_insert(o2fsck_strings *strings, char *string,
 ^~~~~~~~~
 mode_t
---
 fsck.ocfs2/Makefile                 |  2 +-
 fsck.ocfs2/include/o2fsck_strings.h | 43 +++++++++++++++++++++++++++++++++++++
 fsck.ocfs2/include/strings.h        | 44 -------------------------------------
 fsck.ocfs2/pass2.c                  |  2 +-
 fsck.ocfs2/pass5.c                  |  2 +-
 fsck.ocfs2/strings.c                |  2 +-
 6 files changed, 48 insertions(+), 48 deletions(-)
 create mode 100644 fsck.ocfs2/include/o2fsck_strings.h
 delete mode 100644 fsck.ocfs2/include/strings.h

diff --git a/fsck.ocfs2/Makefile b/fsck.ocfs2/Makefile
index 051ed74..baf1994 100644
--- a/fsck.ocfs2/Makefile
+++ b/fsck.ocfs2/Makefile
@@ -64,7 +64,7 @@ HFILES = 	include/fsck.h		\
 		include/problem.h	\
 		include/refcount.h	\
 		include/slot_recovery.h	\
-		include/strings.h	\
+		include/o2fsck_strings.h	\
 		include/util.h
 
 
diff --git a/fsck.ocfs2/include/o2fsck_strings.h b/fsck.ocfs2/include/o2fsck_strings.h
new file mode 100644
index 0000000..69a1be9
--- /dev/null
+++ b/fsck.ocfs2/include/o2fsck_strings.h
@@ -0,0 +1,43 @@
+/*
+ * strings.h
+ *
+ * Copyright (C) 2002 Oracle Corporation.  All rights reserved.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public
+ * License as published by the Free Software Foundation.
+ * 
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public
+ * License along with this program; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 021110-1307, USA.
+ *
+ * Author: Zach Brown
+ */
+
+#ifndef __O2FSCK_STRINGS_H__
+#define __O2FSCK_STRINGS_H__
+
+#include "ocfs2/ocfs2.h"
+#include "ocfs2/kernel-rbtree.h"
+
+typedef struct _o2fsck_strings {
+	struct rb_root	s_root;
+	size_t		s_allocated;
+} o2fsck_strings;
+
+int o2fsck_strings_exists(o2fsck_strings *strings, char *string,
+			  size_t strlen);
+errcode_t o2fsck_strings_insert(o2fsck_strings *strings, char *string,
+				size_t strlen, int *is_dup);
+void o2fsck_strings_init(o2fsck_strings *strings);
+void o2fsck_strings_free(o2fsck_strings *strings);
+size_t o2fsck_strings_bytes_allocated(o2fsck_strings *strings);
+
+#endif /* __O2FSCK_STRINGS_H__ */
+
diff --git a/fsck.ocfs2/include/strings.h b/fsck.ocfs2/include/strings.h
deleted file mode 100644
index 69a1be9..0000000
--- a/fsck.ocfs2/include/strings.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * strings.h
- *
- * Copyright (C) 2002 Oracle Corporation.  All rights reserved.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- * 
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public
- * License along with this program; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 021110-1307, USA.
- *
- * Author: Zach Brown
- */
-
-#ifndef __O2FSCK_STRINGS_H__
-#define __O2FSCK_STRINGS_H__
-
-#include "ocfs2/ocfs2.h"
-#include "ocfs2/kernel-rbtree.h"
-
-typedef struct _o2fsck_strings {
-	struct rb_root	s_root;
-	size_t		s_allocated;
-} o2fsck_strings;
-
-int o2fsck_strings_exists(o2fsck_strings *strings, char *string,
-			  size_t strlen);
-errcode_t o2fsck_strings_insert(o2fsck_strings *strings, char *string,
-				size_t strlen, int *is_dup);
-void o2fsck_strings_init(o2fsck_strings *strings);
-void o2fsck_strings_free(o2fsck_strings *strings);
-size_t o2fsck_strings_bytes_allocated(o2fsck_strings *strings);
-
-#endif /* __O2FSCK_STRINGS_H__ */
-
diff --git a/fsck.ocfs2/pass2.c b/fsck.ocfs2/pass2.c
index 181febb..a48a50b 100644
--- a/fsck.ocfs2/pass2.c
+++ b/fsck.ocfs2/pass2.c
@@ -43,7 +43,7 @@
 #include "fsck.h"
 #include "pass2.h"
 #include "problem.h"
-#include "strings.h"
+#include "o2fsck_strings.h"
 #include "util.h"
 
 static const char *whoami = "pass2";
diff --git a/fsck.ocfs2/pass5.c b/fsck.ocfs2/pass5.c
index 5c2d899..bfad1b7 100644
--- a/fsck.ocfs2/pass5.c
+++ b/fsck.ocfs2/pass5.c
@@ -40,7 +40,7 @@
 #include "fsck.h"
 #include "pass5.h"
 #include "problem.h"
-#include "strings.h"
+#include "o2fsck_strings.h"
 #include "util.h"
 
 static const char *whoami = "pass5";
diff --git a/fsck.ocfs2/strings.c b/fsck.ocfs2/strings.c
index 4ad3782..8a7a8d9 100644
--- a/fsck.ocfs2/strings.c
+++ b/fsck.ocfs2/strings.c
@@ -31,7 +31,7 @@
 #include "ocfs2/ocfs2.h"
 
 #include "fsck.h"
-#include "strings.h"
+#include "o2fsck_strings.h"
 #include "util.h"
 
 struct string_entry {
-- 
1.8.5.6