OpenBSD does not have the memmove() routine available to dynamically
loaded modules in its kernel. It exists but is not exported so it
winds up "mia" on dynamic load of the kernel module. It's needed for
the Heimdal code that's been added into OpenAFS. This patch deals
with this issue by creating an inline version in the OS-specific
param.h file.
Note that this issue does not seem to exist in the amd64 version of
OpenBSD so (at least for now) tis fix is only applied to the i386
version of the header files.
Change-Id: Ide8a5ff49cb662e145fd93aefd8e3a12d7cbead5
Reviewed-on: http://gerrit.openafs.org/8926
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
#define AFS_X86_ENV 1
#define AFSLITTLE_ENDIAN 1
+#ifdef _KERNEL
+void bcopy(const void *, void *, size_t);
+
+static inline void *memmove(void *dst, const void *src, size_t len) {
+ bcopy(src, dst, len);
+ return(dst);
+}
+#endif
+
#endif /* AFS_I386_PARAM_H */
#define AFS_X86_ENV 1
#define AFSLITTLE_ENDIAN 1
+#ifdef _KERNEL
+void bcopy(const void *, void *, size_t);
+
+static inline void *memmove(void *dst, const void *src, size_t len) {
+ bcopy(src, dst, len);
+ return(dst);
+}
+#endif
+
#endif /* AFS_I386_PARAM_H */
#define AFS_X86_ENV 1
#define AFSLITTLE_ENDIAN 1
+#ifdef _KERNEL
+void bcopy(const void *, void *, size_t);
+
+static inline void *memmove(void *dst, const void *src, size_t len) {
+ bcopy(src, dst, len);
+ return(dst);
+}
+#endif
+
#endif /* AFS_I386_PARAM_H */