summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorToomas Soome <tsoome@me.com>2020-05-24 23:13:24 +0300
committerToomas Soome <tsoome@me.com>2021-02-24 23:48:25 +0200
commitcfc9ef1dcc5d6a18778b3b10d738d19df873d1a3 (patch)
tree2f2c43ca29d073b8adaa6837178e3e7c67fc92aa
parent1e094e1b56a6d925d6f7db6fec39db1c0e16451f (diff)
downloadillumos-gate-cfc9ef1dcc5d6a18778b3b10d738d19df873d1a3.tar.gz
13545 fm: multiply-defined symbols
Reviewed by: C Fraire <cfraire@me.com> Reviewed by: Andy Fiddaman <andy@omniosce.org> Approved by: Dan McDonald <danmcd@joyent.com>
-rw-r--r--usr/src/cmd/fm/eversholt/common/esclex.c6
-rw-r--r--usr/src/cmd/fm/eversholt/common/esclex.h14
-rw-r--r--usr/src/cmd/fm/eversholt/common/tree.c24
-rw-r--r--usr/src/cmd/fm/eversholt/common/tree.h38
-rw-r--r--usr/src/cmd/fm/modules/common/eversholt/fme.c4
-rw-r--r--usr/src/cmd/fm/modules/common/eversholt/fme.h4
-rw-r--r--usr/src/cmd/fm/modules/common/eversholt/platform.h2
7 files changed, 57 insertions, 35 deletions
diff --git a/usr/src/cmd/fm/eversholt/common/esclex.c b/usr/src/cmd/fm/eversholt/common/esclex.c
index 44555c7785..59904a5dc1 100644
--- a/usr/src/cmd/fm/eversholt/common/esclex.c
+++ b/usr/src/cmd/fm/eversholt/common/esclex.c
@@ -51,6 +51,12 @@
#include "check.h"
#include "y.tab.h"
+struct lut *Dicts;
+struct lut *Ident;
+struct lut *Timesuffixlut;
+int Pragma_trust_ereports;
+int Pragma_new_errors_only;
+
/* ridiculously long token buffer -- disallow any token longer than this */
#define MAXTOK 8192
static char Tok[MAXTOK];
diff --git a/usr/src/cmd/fm/eversholt/common/esclex.h b/usr/src/cmd/fm/eversholt/common/esclex.h
index 4971527a5a..8b2636d2ba 100644
--- a/usr/src/cmd/fm/eversholt/common/esclex.h
+++ b/usr/src/cmd/fm/eversholt/common/esclex.h
@@ -38,8 +38,6 @@
#ifndef _ESC_COMMON_ESCLEX_H
#define _ESC_COMMON_ESCLEX_H
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#ifdef __cplusplus
extern "C" {
#endif
@@ -58,18 +56,18 @@ const unsigned long long *lex_s2ullp_lut_lookup(struct lut *root,
const char *s);
/* lut containing "ident" strings */
-struct lut *Ident;
+extern struct lut *Ident;
/* lut containing "dictionary" strings */
-struct lut *Dicts;
+extern struct lut *Dicts;
/* lut containing valid timeval suffixes */
-struct lut *Timesuffixlut;
+extern struct lut *Timesuffixlut;
/* flags set by #pragmas */
-int Pragma_new_errors_only;
-int Pragma_trust_ereports;
-int Pragma_allow_cycles;
+extern int Pragma_new_errors_only;
+extern int Pragma_trust_ereports;
+extern int Pragma_allow_cycles;
/* exported by esclex.c but names are mandated by the way yacc works... */
int yylex();
diff --git a/usr/src/cmd/fm/eversholt/common/tree.c b/usr/src/cmd/fm/eversholt/common/tree.c
index 72c5f23f0b..adbb677c9f 100644
--- a/usr/src/cmd/fm/eversholt/common/tree.c
+++ b/usr/src/cmd/fm/eversholt/common/tree.c
@@ -29,8 +29,6 @@
* routines for semantic checking.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
@@ -47,8 +45,26 @@
#include "check.h"
#include "ptree.h"
-static struct node *Root;
+struct lut *Faults;
+struct lut *Upsets;
+struct lut *Defects;
+struct lut *Errors;
+struct lut *Ereports;
+struct lut *Ereportenames;
+struct lut *Ereportenames_discard;
+struct lut *SERDs;
+struct lut *STATs;
+struct lut *ASRUs;
+struct lut *FRUs;
+struct lut *Configs;
+struct node *Props;
+struct node *Lastprops;
+struct node *Masks;
+struct node *Lastmasks;
+struct node *Problems;
+struct node *Lastproblems;
+static struct node *Root;
static char *Newname;
static struct stats *Faultcount;
@@ -318,7 +334,7 @@ tree_free(struct node *root)
static int
tree_treecmp(struct node *np1, struct node *np2, enum nodetype t,
- lut_cmp cmp_func)
+ lut_cmp cmp_func)
{
if (np1 == NULL || np2 == NULL)
return (0);
diff --git a/usr/src/cmd/fm/eversholt/common/tree.h b/usr/src/cmd/fm/eversholt/common/tree.h
index f28b3286d2..986aa159ca 100644
--- a/usr/src/cmd/fm/eversholt/common/tree.h
+++ b/usr/src/cmd/fm/eversholt/common/tree.h
@@ -32,8 +32,6 @@
#ifndef _ESC_COMMON_TREE_H
#define _ESC_COMMON_TREE_H
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#ifdef __cplusplus
extern "C" {
#endif
@@ -316,24 +314,24 @@ void tree_report();
int tree_namecmp(struct node *np1, struct node *np2);
int tree_eventcmp(struct node *np1, struct node *np2);
-struct lut *Faults;
-struct lut *Upsets;
-struct lut *Defects;
-struct lut *Errors;
-struct lut *Ereports;
-struct lut *Ereportenames;
-struct lut *Ereportenames_discard;
-struct lut *SERDs;
-struct lut *STATs;
-struct lut *ASRUs;
-struct lut *FRUs;
-struct lut *Configs;
-struct node *Props;
-struct node *Lastprops;
-struct node *Masks;
-struct node *Lastmasks;
-struct node *Problems;
-struct node *Lastproblems;
+extern struct lut *Faults;
+extern struct lut *Upsets;
+extern struct lut *Defects;
+extern struct lut *Errors;
+extern struct lut *Ereports;
+extern struct lut *Ereportenames;
+extern struct lut *Ereportenames_discard;
+extern struct lut *SERDs;
+extern struct lut *STATs;
+extern struct lut *ASRUs;
+extern struct lut *FRUs;
+extern struct lut *Configs;
+extern struct node *Props;
+extern struct node *Lastprops;
+extern struct node *Masks;
+extern struct node *Lastmasks;
+extern struct node *Problems;
+extern struct node *Lastproblems;
#ifdef __cplusplus
}
diff --git a/usr/src/cmd/fm/modules/common/eversholt/fme.c b/usr/src/cmd/fm/modules/common/eversholt/fme.c
index 0f7edab994..4914902da5 100644
--- a/usr/src/cmd/fm/modules/common/eversholt/fme.c
+++ b/usr/src/cmd/fm/modules/common/eversholt/fme.c
@@ -56,6 +56,10 @@
#include "platform.h"
#include "esclex.h"
+struct lut *Istats;
+struct lut *SerdEngines;
+nvlist_t *Action_nvl;
+
/* imported from eft.c... */
extern hrtime_t Hesitate;
extern char *Serd_Override;
diff --git a/usr/src/cmd/fm/modules/common/eversholt/fme.h b/usr/src/cmd/fm/modules/common/eversholt/fme.h
index 5823a2170a..378e9d25cb 100644
--- a/usr/src/cmd/fm/modules/common/eversholt/fme.h
+++ b/usr/src/cmd/fm/modules/common/eversholt/fme.h
@@ -85,8 +85,8 @@ extern "C" {
#define WOBUF_ISTATS "istats"
#define WOBUF_SERDS "serds"
-struct lut *Istats; /* instanced stats a la "count=" */
-struct lut *SerdEngines;
+extern struct lut *Istats; /* instanced stats a la "count=" */
+extern struct lut *SerdEngines;
struct fme;
diff --git a/usr/src/cmd/fm/modules/common/eversholt/platform.h b/usr/src/cmd/fm/modules/common/eversholt/platform.h
index 23e1f6f41e..fcccf50cb5 100644
--- a/usr/src/cmd/fm/modules/common/eversholt/platform.h
+++ b/usr/src/cmd/fm/modules/common/eversholt/platform.h
@@ -38,7 +38,7 @@ extern "C" {
#include <fm/fmd_api.h>
#include <fm/libtopo.h>
-nvlist_t *Action_nvl; /* nvl for problem with action=... prop on it */
+extern nvlist_t *Action_nvl; /* nvl for problem with action=... prop on it */
void platform_init(void);
void platform_fini(void);