Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 3 Aug 2001 14:16:17 -0700
From:      Tabor Kelly <pdxmax@dsl-only.net>
To:        freebsd-hackers@freebsd.org
Subject:   problems with kvm_nlist()
Message-ID:  <146809363.20010803141617@dsl-only.net>

next in thread | raw e-mail | index | archive | help
------------CF1373321FB864C
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

I am using kvm_nlist() in one of my programs. I have written a smaller
test program for use here. Either kvm_nlist() has a bug or I am very
confused.

According to kvm_nlist(3), kvm_nlist should go through an array of
nlist structures and fill out each structure with that symbol's
information. Well, as far as I can tell, it fills out all of the
structures with the information from the symbol in the first
structure.

Has anybody else seen this behavior? Attached is a file named
test.cpp that should reproduce this behavior. If you want to play with
this behavior, change what structure is pointed to when calling
kvm_nlist on line 38 of the program source.

Also, be aware that you will have to make the following modifications
to the file permissions after you compile it (if you don't want to run
it as root):

# chown root:kmem a.out
# chmod g+s a.out

Thank You,

Tabor Kelly
------------CF1373321FB864C
Content-Type: application/octet-stream; name="test.cpp"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="test.cpp"

Ly90ZXN0LmNwcA0KLy9jb21waWxlIHdpdGggZ2NjIHRlc3QuY3BwIC1sc3RkYysrIC1sa3ZtDQoN
CiNpbmNsdWRlIDxmY250bC5oPg0KI2luY2x1ZGUgPGlvc3RyZWFtPg0KI2luY2x1ZGUgPHB0aHJl
YWQuaD4NCiNpbmNsdWRlIDxzdHJpbmcuaD4NCiNpbmNsdWRlIDx1bmlzdGQuaD4NCiNpbmNsdWRl
IDxzeXMvZGtzdGF0Lmg+DQojaW5jbHVkZSA8a3ZtLmg+DQojaW5jbHVkZSA8bmxpc3QuaD4NCiNp
bmNsdWRlIDxzdGRpby5oPg0KDQptYWluKCkNCnsNCiAgaW50IGkgPSBOVUxMOw0KICBpbnQgbyA9
IE5VTEw7DQogIGNoYXIgZXJyb3JCdWZmW19QT1NJWDJfTElORV9NQVhdOw0KICBrdm1fdCAqcEt2
bSA9IE5VTEw7DQogIHN0cnVjdCBubGlzdCBzdHJ1Y3RObGlzdFs3XTsNCiAgYnplcm8oJnN0cnVj
dE5saXN0WzBdLCAoc2l6ZW9mKHN0cnVjdCBubGlzdCkgKiA3KSk7DQoNCiAgc3RydWN0Tmxpc3Rb
MF0ubl9uYW1lID0gIl9jY3B1IjsNCiAgc3RydWN0Tmxpc3RbMV0ubl9uYW1lID0gIl9jcF90aW1l
IjsNCiAgc3RydWN0Tmxpc3RbMl0ubl9uYW1lID0gIl9hdmVydW5uYWJsZSI7DQogIHN0cnVjdE5s
aXN0WzNdLm5fbmFtZSA9ICJfYnVmc3BhY2UiOw0KICBzdHJ1Y3RObGlzdFs0XS5uX25hbWUgPSAi
X2NudCI7DQogIHN0cnVjdE5saXN0WzVdLm5fbmFtZSA9ICJfbmV4dHBpZCI7DQoNCiAgcEt2bSA9
IGt2bV9vcGVuZmlsZXMoTlVMTCwgTlVMTCwgTlVMTCwgT19SRE9OTFksICZlcnJvckJ1ZmZbMF0p
Ow0KICBpZiAocEt2bSA9PSBOVUxMKQ0KICB7DQoJY291dCA8PCAiRXJyb3I6IGt2bV9vcGVuZmls
ZXMoKSBmYWlsZWQhXG4iOw0KCWNvdXQgPDwgIlx0XCIiIDw8IGVycm9yQnVmZiA8PCAiXCJcbiI7
DQoJcmV0dXJuIDE7DQogIH0NCg0KICBvID0ga3ZtX25saXN0KHBLdm0sICZzdHJ1Y3RObGlzdFsw
XSk7IC8vY2hhbmdlIHdoaWNoIGl0ZW0gaXMgcG9pbnRlZCB0byBmb3IgaW50ZXJlc3RpbmcgcmVz
dWx0cy4NCiAgaWYgKG8gPCAwKQ0KICB7DQoJY291dCA8PCAiRXJyb3I6IGt2bV9ubGlzdCgpIGZh
aWxlZCFcbiI7DQoJY291dCA8PCAiXHRcIiIgPDwga3ZtX2dldGVycihwS3ZtKSA8PCAiXCJcbiI7
DQoJcmV0dXJuIDE7DQogIH0NCg0KICBjb3V0IDw8IG8gPDwgIiBpdGVtcyBpbiB0aGUgbGlzdCB3
ZXJlIGJhZFxuIjsNCg0KDQogIGZvcihpID0gMDsgaSA8IDY7IGkrKykNCiAgew0KCWNvdXQgPDwg
InN0cnVjdE5saXN0WyIgPDwgaSA8PCAiXS5uX25hbWU6ICIgPDwgc3RydWN0Tmxpc3RbaV0ubl9u
YW1lDQoJCSA8PCAiXG4iOw0KCWNvdXQgPDwgInN0cnVjdE5saXN0WyIgPDwgaSA8PCAiXS5uX3R5
cGU6ICIgPDwgc3RydWN0Tmxpc3RbaV0ubl90eXBlDQoJCSA8PCAiXG4iOw0KCWNvdXQgPDwgInN0
cnVjdE5saXN0WyIgPDwgaSA8PCAiXS5uX3ZhbHVlOiAiIDw8IHN0cnVjdE5saXN0WzBdLm5fdmFs
dWUNCgkJIDw8ICJcbiI7DQogIH0NCg0KICBrdm1fY2xvc2UocEt2bSk7DQp9DQo=

------------CF1373321FB864C--



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?146809363.20010803141617>