svn commit: r275469 - head/sys/kern
Warner Losh
imp at FreeBSD.org
Wed Dec 3 22:14:14 UTC 2014
Author: imp
Date: Wed Dec 3 22:14:13 2014
New Revision: 275469
URL: https://svnweb.freebsd.org/changeset/base/275469
Log:
Const poison in a few places to ensure we don't modify things
through the module data pointer.
Modified:
head/sys/kern/kern_linker.c
Modified: head/sys/kern/kern_linker.c
==============================================================================
--- head/sys/kern/kern_linker.c Wed Dec 3 21:55:44 2014 (r275468)
+++ head/sys/kern/kern_linker.c Wed Dec 3 22:14:13 2014 (r275469)
@@ -139,8 +139,8 @@ static caddr_t linker_file_lookup_symbol
const char* name, int deps);
static int linker_load_module(const char *kldname,
const char *modname, struct linker_file *parent,
- struct mod_depend *verinfo, struct linker_file **lfpp);
-static modlist_t modlist_lookup2(const char *name, struct mod_depend *verinfo);
+ const struct mod_depend *verinfo, struct linker_file **lfpp);
+static modlist_t modlist_lookup2(const char *name, const struct mod_depend *verinfo);
static void
linker_init(void *arg)
@@ -1353,7 +1353,7 @@ modlist_lookup(const char *name, int ver
}
static modlist_t
-modlist_lookup2(const char *name, struct mod_depend *verinfo)
+modlist_lookup2(const char *name, const struct mod_depend *verinfo)
{
modlist_t mod, bestmod;
int ver;
@@ -1426,7 +1426,7 @@ linker_preload(void *arg)
linker_file_list_t depended_files;
struct mod_metadata *mp, *nmp;
struct mod_metadata **start, **stop, **mdp, **nmdp;
- struct mod_depend *verinfo;
+ const struct mod_depend *verinfo;
int nver;
int resolves;
modlist_t mod;
@@ -1716,7 +1716,7 @@ linker_lookup_file(const char *path, int
*/
static char *
linker_hints_lookup(const char *path, int pathlen, const char *modname,
- int modnamelen, struct mod_depend *verinfo)
+ int modnamelen, const struct mod_depend *verinfo)
{
struct thread *td = curthread; /* XXX */
struct ucred *cred = td ? td->td_ucred : NULL;
@@ -1849,7 +1849,7 @@ bad:
*/
static char *
linker_search_module(const char *modname, int modnamelen,
- struct mod_depend *verinfo)
+ const struct mod_depend *verinfo)
{
char *cp, *ep, *result;
@@ -1953,7 +1953,7 @@ linker_hwpmc_list_objects(void)
*/
static int
linker_load_module(const char *kldname, const char *modname,
- struct linker_file *parent, struct mod_depend *verinfo,
+ struct linker_file *parent, const struct mod_depend *verinfo,
struct linker_file **lfpp)
{
linker_file_t lfdep;
@@ -2027,7 +2027,7 @@ linker_load_dependencies(linker_file_t l
linker_file_t lfdep;
struct mod_metadata **start, **stop, **mdp, **nmdp;
struct mod_metadata *mp, *nmp;
- struct mod_depend *verinfo;
+ const struct mod_depend *verinfo;
modlist_t mod;
const char *modname, *nmodname;
int ver, error = 0, count;
More information about the svn-src-head
mailing list