Mark Wright - 2007-09-19

Logged In: YES
user_id=1833380
Originator: NO

Please find below diffs for my proposed fix.

--- eyedb-2.7.10-orig/libtool 2007-09-18 07:15:28.386478490 +0000
+++ eyedb-2.7.10/libtool 2007-09-19 05:00:57.901035607 +0000
@@ -7469,7 +7469,7 @@

# Dependencies to place after the objects being linked to create a
# shared library.
-postdeps="-lCstd -lCrun"
+postdeps="-lCrun"

# The library search path used internally by the compiler when linking
# a shared library.
--- eyedb-2.7.10-orig/src/lib/strutils.cc 2006-01-28 14:13:38.000000000 +0000
+++ eyedb-2.7.10/src/lib/strutils.cc 2007-09-19 05:00:57.901595483 +0000
@@ -23,6 +23,8 @@

#include <eyedbconfig.h>

+#include <stdio.h>
+
#include <eyedblib/strutils.h>

std::string str_convert(char c, const char *fmt)
--- eyedb-2.7.10-orig/src/lib/butils.cc 2006-04-05 14:21:49.000000000 +0000
+++ eyedb-2.7.10/src/lib/butils.cc 2007-09-19 05:00:57.901813316 +0000
@@ -28,6 +28,7 @@
#endif
#include <stdio.h>
#include <stdlib.h>
+#include <string.h>

#include <eyedblib/machtypes.h>
#include <eyedblib/butils.h>
--- eyedb-2.7.10-orig/src/eyedbsm/oapi.cc 2006-01-28 14:13:38.000000000 +0000
+++ eyedb-2.7.10/src/eyedbsm/oapi.cc 2007-09-19 05:00:57.902099754 +0000
@@ -23,6 +23,8 @@

#include <eyedbconfig.h>

+#include <malloc.h>
+
#include <eyedbsm/eyedbsm.h>

namespace eyedbsm {
--- eyedb-2.7.10-orig/src/eyedb/GetOpt.cc 2006-01-28 14:13:37.000000000 +0000
+++ eyedb-2.7.10/src/eyedb/GetOpt.cc 2007-09-19 05:00:57.902843163 +0000
@@ -21,6 +21,7 @@
Author: Eric Viara <viara@sysra.com>
*/

+#include <string.h>

#include "GetOpt.h"

--- eyedb-2.7.10-orig/src/eyedb/oqlbase.cc 2006-09-10 19:47:10.000000000 +0000
+++ eyedb-2.7.10/src/eyedb/oqlbase.cc 2007-09-19 06:30:10.583872589 +0000
@@ -44,6 +44,22 @@

#define NEW_SUPPRESS_DOUBLES

+#ifndef MININT
+#ifdef INT_MIN
+#define MININT INT_MIN
+#else
+#define MININT 0x80000000
+#endif
+#endif
+
+#ifndef MINSHORT
+#ifdef SHRT_MIN
+#define MINSHORT SHRT_MIN
+#else
+#define MINSHORT 0x8000
+#endif
+#endif
+
#include "oql_p.h"

namespace eyedb {
--- eyedb-2.7.10-orig/src/lib/rpc_be.cc 2006-09-10 19:47:12.000000000 +0000
+++ eyedb-2.7.10/src/lib/rpc_be.cc 2007-09-19 08:09:48.520350577 +0000
@@ -547,12 +547,18 @@
PERROR(msg_make("eyedb fatal error: unable to create pipe"));
return rpc_Error;
}
-#if defined(SOLARIS) || defined(ULTRASOL7)
+#if defined(SOLARIS) || defined(ULTRASOL7) || (defined(__sun) && defined(__SVR4))
if (ioctl(pfd[0], I_PUSH, "connld") < 0) {
if (created) unlink(portname);
PERROR(msg_make("eyedb fatal error: unable to configure pipe"));
return rpc_Error;
}
+
+ if (ioctl(pfd[0], I_SRDOPT, RNORM | RPROTDIS) < 0) {
+ if (created) unlink(portname);
+ PERROR(msg_make("eyedb fatal error: ioctl(fd, I_SRDOPT, RNORM | RPROTDIS) failed on pipe"));
+ return rpc_Error;
+ }
#endif

if (fattach(pfd[0], port->portname) < 0) {