Compare commits
	
		
			567 Commits
		
	
	
		
			LIBGTOP_2_
			...
			gnome-2-36
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					e0f97e7dbd | ||
| 
						 | 
					d530a2d2a8 | ||
| 
						 | 
					88ecae1d00 | ||
| 
						 | 
					89a73e2746 | ||
| 
						 | 
					35bf89632a | ||
| 
						 | 
					4285abe72b | ||
| 
						 | 
					1a103bf142 | ||
| 
						 | 
					3ff313dd03 | ||
| 
						 | 
					01a56e2e30 | ||
| 
						 | 
					7afc81f99d | ||
| 
						 | 
					b0ab056e99 | ||
| 
						 | 
					d2bc9b4331 | ||
| 
						 | 
					70e00a0262 | ||
| 
						 | 
					f99bb61446 | ||
| 
						 | 
					a0166d2844 | ||
| 
						 | 
					5f39f4f8f9 | ||
| 
						 | 
					e5e303d497 | ||
| 
						 | 
					235ffb4cb6 | ||
| 
						 | 
					59d9780eae | ||
| 
						 | 
					305701c637 | ||
| 
						 | 
					b68b2ec65e | ||
| 
						 | 
					1a8d18a17f | ||
| 
						 | 
					04d39eca02 | ||
| 
						 | 
					36110deac8 | ||
| 
						 | 
					72f10ecfe6 | ||
| 
						 | 
					1a8f092264 | ||
| 
						 | 
					5522fae242 | ||
| 
						 | 
					870dd5afa6 | ||
| 
						 | 
					94968b4406 | ||
| 
						 | 
					819bfe56ee | ||
| 
						 | 
					de408a6bba | ||
| 
						 | 
					05cb14dbb2 | ||
| 
						 | 
					7e3e4b6860 | ||
| 
						 | 
					02070b7170 | ||
| 
						 | 
					fcfacf3213 | ||
| 
						 | 
					7925f83b57 | ||
| 
						 | 
					68104bdde1 | ||
| 
						 | 
					ac2aef0f47 | ||
| 
						 | 
					9764518807 | ||
| 
						 | 
					13f08cf164 | ||
| 
						 | 
					c8a4c3d2a1 | ||
| 
						 | 
					52c35c1b81 | ||
| 
						 | 
					e528a7280b | ||
| 
						 | 
					99ff3d4dff | ||
| 
						 | 
					f865e95e20 | ||
| 
						 | 
					eec96d8ae8 | ||
| 
						 | 
					d10a584e40 | ||
| 
						 | 
					a55eee5863 | ||
| 
						 | 
					7437509412 | ||
| 
						 | 
					c9e73e52ac | ||
| 
						 | 
					4c455ac8a0 | ||
| 
						 | 
					56f03d0987 | ||
| 
						 | 
					a3b502ec3f | ||
| 
						 | 
					b74d6abf19 | ||
| 
						 | 
					ca42f1f3af | ||
| 
						 | 
					106ee901bb | ||
| 
						 | 
					0642c2d610 | ||
| 
						 | 
					42e860e5ad | ||
| 
						 | 
					8f2f236404 | ||
| 
						 | 
					4e0d819264 | ||
| 
						 | 
					5c6879baab | ||
| 
						 | 
					a0e97885c1 | ||
| 
						 | 
					d817bee619 | ||
| 
						 | 
					58d50d3546 | ||
| 
						 | 
					d3a247a60f | ||
| 
						 | 
					45c8452140 | ||
| 
						 | 
					72b4aed8f1 | ||
| 
						 | 
					0e8f911410 | ||
| 
						 | 
					db8ad19eef | ||
| 
						 | 
					d30fbb22e0 | ||
| 
						 | 
					6762719e43 | ||
| 
						 | 
					ad7dc16d89 | ||
| 
						 | 
					f2e57d9fec | ||
| 
						 | 
					1481823085 | ||
| 
						 | 
					4e57a6222d | ||
| 
						 | 
					cf531d3faf | ||
| 
						 | 
					b447260691 | ||
| 
						 | 
					1dbe133a24 | ||
| 
						 | 
					5ee8d4cb58 | ||
| 
						 | 
					3bd720ad81 | ||
| 
						 | 
					6acebf416d | ||
| 
						 | 
					51fd022bdd | ||
| 
						 | 
					6239438dce | ||
| 
						 | 
					0099cbb6b4 | ||
| 
						 | 
					cd5649f326 | ||
| 
						 | 
					d8a5e2162d | ||
| 
						 | 
					185396d674 | ||
| 
						 | 
					90f0e40395 | ||
| 
						 | 
					172f0a50ba | ||
| 
						 | 
					887092a05d | ||
| 
						 | 
					b2a2f6b5c2 | ||
| 
						 | 
					6bdb9a76eb | ||
| 
						 | 
					fd29dae933 | ||
| 
						 | 
					65c5ca842f | ||
| 
						 | 
					edd08e6fd6 | ||
| 
						 | 
					82ff91b74c | ||
| 
						 | 
					ca6cabe41d | ||
| 
						 | 
					4fb241097f | ||
| 
						 | 
					214c3635da | ||
| 
						 | 
					fba67da65d | ||
| 
						 | 
					119049b8c0 | ||
| 
						 | 
					1908c00d32 | ||
| 
						 | 
					70640d297e | ||
| 
						 | 
					c33623c097 | ||
| 
						 | 
					6fe3b94f13 | ||
| 
						 | 
					f1a01a543c | ||
| 
						 | 
					758862e272 | ||
| 
						 | 
					6941e7e22f | ||
| 
						 | 
					ee2ac6d563 | ||
| 
						 | 
					4c0632ccbd | ||
| 
						 | 
					71c7d65b1d | ||
| 
						 | 
					94aa63f796 | ||
| 
						 | 
					931a8364ff | ||
| 
						 | 
					598764c171 | ||
| 
						 | 
					aa7f9df00e | ||
| 
						 | 
					4c4466292e | ||
| 
						 | 
					fcc1d9d957 | ||
| 
						 | 
					0580b2fb2c | ||
| 
						 | 
					a206cfc728 | ||
| 
						 | 
					58ca70eaee | ||
| 
						 | 
					421419fdbf | ||
| 
						 | 
					ebb7f9d5e2 | ||
| 
						 | 
					1f3b08e6dc | ||
| 
						 | 
					a870dfc8f2 | ||
| 
						 | 
					e0244ad3fc | ||
| 
						 | 
					1156794b33 | ||
| 
						 | 
					874771ec1c | ||
| 
						 | 
					16f262985d | ||
| 
						 | 
					0a94dc7992 | ||
| 
						 | 
					50b5dea402 | ||
| 
						 | 
					f4b23ef0c6 | ||
| 
						 | 
					1f41349a7e | ||
| 
						 | 
					548f104f35 | ||
| 
						 | 
					4808aac8ef | ||
| 
						 | 
					f04ce61b80 | ||
| 
						 | 
					c7f7e5a1c6 | ||
| 
						 | 
					e2348c24a0 | ||
| 
						 | 
					f76b37be1b | ||
| 
						 | 
					b2fee3e111 | ||
| 
						 | 
					7b2416a8d1 | ||
| 
						 | 
					d006da7e54 | ||
| 
						 | 
					a93dc2526d | ||
| 
						 | 
					a3a16707b5 | ||
| 
						 | 
					fd53595189 | ||
| 
						 | 
					0057bbbc47 | ||
| 
						 | 
					e6d776ee61 | ||
| 
						 | 
					c68e077909 | ||
| 
						 | 
					72e46fc6b4 | ||
| 
						 | 
					2ea8a156f3 | ||
| 
						 | 
					40e1a86d52 | ||
| 
						 | 
					a101d6b27a | ||
| 
						 | 
					9770db12d2 | ||
| 
						 | 
					a61052dc59 | ||
| 
						 | 
					8985e7e239 | ||
| 
						 | 
					1c1449306b | ||
| 
						 | 
					3f8f65386e | ||
| 
						 | 
					30d29e624b | ||
| 
						 | 
					bea8b6790a | ||
| 
						 | 
					5e6c25d29d | ||
| 
						 | 
					b7e1219e0a | ||
| 
						 | 
					057dcf77d6 | ||
| 
						 | 
					b7edd1542e | ||
| 
						 | 
					7326f8816d | ||
| 
						 | 
					ed1b3f5834 | ||
| 
						 | 
					7a3414d002 | ||
| 
						 | 
					564506bb0d | ||
| 
						 | 
					9e0843064d | ||
| 
						 | 
					d8d8aac9d3 | ||
| 
						 | 
					9a887feed2 | ||
| 
						 | 
					81dfeb526c | ||
| 
						 | 
					d9c01aac4a | ||
| 
						 | 
					82c28b2ad2 | ||
| 
						 | 
					05345dc032 | ||
| 
						 | 
					63ba7b2c12 | ||
| 
						 | 
					5371e8ec88 | ||
| 
						 | 
					e682094418 | ||
| 
						 | 
					2e861977a6 | ||
| 
						 | 
					a39f290683 | ||
| 
						 | 
					02b55313f3 | ||
| 
						 | 
					596c42d7f1 | ||
| 
						 | 
					d4d4f7735a | ||
| 
						 | 
					4cd3e4fed6 | ||
| 
						 | 
					c99ceeaa65 | ||
| 
						 | 
					ecbfade528 | ||
| 
						 | 
					73d4679ad8 | ||
| 
						 | 
					df1db43032 | ||
| 
						 | 
					ff07ba102f | ||
| 
						 | 
					07d2816d5b | ||
| 
						 | 
					2caff8bf5c | ||
| 
						 | 
					78e257e958 | ||
| 
						 | 
					efaaf6eb77 | ||
| 
						 | 
					47bcd423b5 | ||
| 
						 | 
					38bfee6739 | ||
| 
						 | 
					3147bf2e34 | ||
| 
						 | 
					2506662196 | ||
| 
						 | 
					b6eb0873e7 | ||
| 
						 | 
					2c08229f04 | ||
| 
						 | 
					753d9abb13 | ||
| 
						 | 
					af7e9cd1b6 | ||
| 
						 | 
					552ea7ec3a | ||
| 
						 | 
					43f19912e3 | ||
| 
						 | 
					16bb5c8075 | ||
| 
						 | 
					bebcb377af | ||
| 
						 | 
					4cffb2f094 | ||
| 
						 | 
					5adaa90de3 | ||
| 
						 | 
					f9e8ae8dfc | ||
| 
						 | 
					efeb24a96c | ||
| 
						 | 
					3c4ddb5572 | ||
| 
						 | 
					fec9e956e3 | ||
| 
						 | 
					2ee4fa70a5 | ||
| 
						 | 
					7a4b2d91ad | ||
| 
						 | 
					dc7eab4329 | ||
| 
						 | 
					a44392d948 | ||
| 
						 | 
					b013937b2c | ||
| 
						 | 
					4bded8fa91 | ||
| 
						 | 
					f88a38aa52 | ||
| 
						 | 
					37774dc02d | ||
| 
						 | 
					4efe3721e7 | ||
| 
						 | 
					31cbc3374d | ||
| 
						 | 
					c8a33802c2 | ||
| 
						 | 
					a3ff5fb398 | ||
| 
						 | 
					8d5b3dd86a | ||
| 
						 | 
					fecedf8c72 | ||
| 
						 | 
					183b7b0cf1 | ||
| 
						 | 
					1523fae41e | ||
| 
						 | 
					a6d0d61175 | ||
| 
						 | 
					b0f4bee85e | ||
| 
						 | 
					1d1d3fb907 | ||
| 
						 | 
					bd363a9ca6 | ||
| 
						 | 
					46c1169ab1 | ||
| 
						 | 
					b11aa1517e | ||
| 
						 | 
					aa7572abfd | ||
| 
						 | 
					17b03f33ab | ||
| 
						 | 
					dd46d6a00e | ||
| 
						 | 
					7bd52fc397 | ||
| 
						 | 
					ff7cbcbe61 | ||
| 
						 | 
					d1d565aa60 | ||
| 
						 | 
					169b76a88f | ||
| 
						 | 
					0a265d05d4 | ||
| 
						 | 
					08ac661b19 | ||
| 
						 | 
					1baa3fcc6a | ||
| 
						 | 
					eaff15b741 | ||
| 
						 | 
					4612e7c7eb | ||
| 
						 | 
					f66324f84d | ||
| 
						 | 
					138889c4d6 | ||
| 
						 | 
					cac71bf6c4 | ||
| 
						 | 
					2ea3da9da5 | ||
| 
						 | 
					5144c3e127 | ||
| 
						 | 
					c4907672cd | ||
| 
						 | 
					4c9a161eb5 | ||
| 
						 | 
					32833323d9 | ||
| 
						 | 
					0de702b142 | ||
| 
						 | 
					4e24854dbf | ||
| 
						 | 
					08fd95d253 | ||
| 
						 | 
					aa1a6766f2 | ||
| 
						 | 
					537dc1bff1 | ||
| 
						 | 
					93829c8cbb | ||
| 
						 | 
					cecf53394b | ||
| 
						 | 
					62239cfe50 | ||
| 
						 | 
					15ffb2d039 | ||
| 
						 | 
					7f14f4409d | ||
| 
						 | 
					f8c573b78c | ||
| 
						 | 
					49641cc363 | ||
| 
						 | 
					46706961ac | ||
| 
						 | 
					edda30a4ad | ||
| 
						 | 
					c775a536c8 | ||
| 
						 | 
					84a697a826 | ||
| 
						 | 
					07c04634bc | ||
| 
						 | 
					78a4292fb4 | ||
| 
						 | 
					7bdc92f325 | ||
| 
						 | 
					b40f210d03 | ||
| 
						 | 
					50bb0d51b3 | ||
| 
						 | 
					3d0dc2b36e | ||
| 
						 | 
					33f0825b3c | ||
| 
						 | 
					3cc7b3aecb | ||
| 
						 | 
					f7e1ab5a0e | ||
| 
						 | 
					f6edec8c76 | ||
| 
						 | 
					ccf85794e2 | ||
| 
						 | 
					9bd7b581cd | ||
| 
						 | 
					825c28e04f | ||
| 
						 | 
					f787bfa0c7 | ||
| 
						 | 
					93ceca1af2 | ||
| 
						 | 
					a1bc181e96 | ||
| 
						 | 
					3db7ab8ddd | ||
| 
						 | 
					5b64ff7b6e | ||
| 
						 | 
					f6347e796d | ||
| 
						 | 
					26adc05a52 | ||
| 
						 | 
					6a2464c4ad | ||
| 
						 | 
					178420d1f7 | ||
| 
						 | 
					81c1f668d1 | ||
| 
						 | 
					2924b470ea | ||
| 
						 | 
					c36239c8ea | ||
| 
						 | 
					8337a4af31 | ||
| 
						 | 
					a2cdb07c27 | ||
| 
						 | 
					2fa17f308d | ||
| 
						 | 
					b57703888f | ||
| 
						 | 
					85a793f117 | ||
| 
						 | 
					ed1d6cd9e7 | ||
| 
						 | 
					4a17d9fef5 | ||
| 
						 | 
					f2d748162e | ||
| 
						 | 
					363a6f9088 | ||
| 
						 | 
					e2686446bb | ||
| 
						 | 
					1c01f08117 | ||
| 
						 | 
					6768eddab9 | ||
| 
						 | 
					ed440c7d0b | ||
| 
						 | 
					643005349a | ||
| 
						 | 
					cbb3f7dd5b | ||
| 
						 | 
					72537d102d | ||
| 
						 | 
					a43d48f67c | ||
| 
						 | 
					c50eb6d494 | ||
| 
						 | 
					010e3a1c9d | ||
| 
						 | 
					3ea6e1caf0 | ||
| 
						 | 
					f66c9665bd | ||
| 
						 | 
					a80c80ca69 | ||
| 
						 | 
					f41ab3beed | ||
| 
						 | 
					933683da39 | ||
| 
						 | 
					2679fdde9a | ||
| 
						 | 
					2458096acf | ||
| 
						 | 
					1f44dbb385 | ||
| 
						 | 
					d99a29d217 | ||
| 
						 | 
					15abcdbbf2 | ||
| 
						 | 
					62bafe804e | ||
| 
						 | 
					9f051c9569 | ||
| 
						 | 
					231f4d2a14 | ||
| 
						 | 
					4af6777d76 | ||
| 
						 | 
					c05776fa09 | ||
| 
						 | 
					f6b31585bb | ||
| 
						 | 
					f3c86c8767 | ||
| 
						 | 
					c26b6ead21 | ||
| 
						 | 
					3d9f260bd4 | ||
| 
						 | 
					2ed2120869 | ||
| 
						 | 
					5d02f86549 | ||
| 
						 | 
					6e3d067edd | ||
| 
						 | 
					bc19d07178 | ||
| 
						 | 
					8e288b06be | ||
| 
						 | 
					ffcbac629f | ||
| 
						 | 
					568144dcd7 | ||
| 
						 | 
					d75259cbca | ||
| 
						 | 
					7e697f047a | ||
| 
						 | 
					c1fba7d0fa | ||
| 
						 | 
					d541cf22ef | ||
| 
						 | 
					35a0ac4f2c | ||
| 
						 | 
					391377ccf8 | ||
| 
						 | 
					c0d87d96d3 | ||
| 
						 | 
					a7f2a1db4a | ||
| 
						 | 
					77fff173fc | ||
| 
						 | 
					863da1cdfd | ||
| 
						 | 
					23798fbd51 | ||
| 
						 | 
					8399315a4f | ||
| 
						 | 
					ab3f8f58ef | ||
| 
						 | 
					e5fdd58fee | ||
| 
						 | 
					86f43f408b | ||
| 
						 | 
					1aab514cda | ||
| 
						 | 
					3a8f2335c9 | ||
| 
						 | 
					5b5c9215dc | ||
| 
						 | 
					bf13e02061 | ||
| 
						 | 
					1e2c9d5517 | ||
| 
						 | 
					5dccc423d8 | ||
| 
						 | 
					d58409351c | ||
| 
						 | 
					1c20ceb694 | ||
| 
						 | 
					3d4491494f | ||
| 
						 | 
					10a04fc9c7 | ||
| 
						 | 
					10e5124770 | ||
| 
						 | 
					f269f738d7 | ||
| 
						 | 
					bc86ee5421 | ||
| 
						 | 
					7ea989c2b8 | ||
| 
						 | 
					91b7ae4b11 | ||
| 
						 | 
					ce23ce407c | ||
| 
						 | 
					7f779e078d | ||
| 
						 | 
					229eab1213 | ||
| 
						 | 
					791e0dd859 | ||
| 
						 | 
					f63973eac5 | ||
| 
						 | 
					806a2d2d7e | ||
| 
						 | 
					af81e9be75 | ||
| 
						 | 
					90fc3ca780 | ||
| 
						 | 
					99e9437b37 | ||
| 
						 | 
					6c7f40ac64 | ||
| 
						 | 
					e75261ada8 | ||
| 
						 | 
					dc5da30913 | ||
| 
						 | 
					4d78d26932 | ||
| 
						 | 
					cd950bbf73 | ||
| 
						 | 
					c1b95643a8 | ||
| 
						 | 
					be8a371481 | ||
| 
						 | 
					fedd75b2b1 | ||
| 
						 | 
					a02e213373 | ||
| 
						 | 
					e3697c9a9e | ||
| 
						 | 
					91e2e5a1b7 | ||
| 
						 | 
					158280e297 | ||
| 
						 | 
					62c741074c | ||
| 
						 | 
					87a80ba430 | ||
| 
						 | 
					7bb5abb9a8 | ||
| 
						 | 
					40485978ec | ||
| 
						 | 
					73c62a7bdb | ||
| 
						 | 
					e4d9c10a73 | ||
| 
						 | 
					5d3f18e12c | ||
| 
						 | 
					d97b0c3419 | ||
| 
						 | 
					960d12822d | ||
| 
						 | 
					f79f25f5ce | ||
| 
						 | 
					3bb78c22c4 | ||
| 
						 | 
					4971103dc3 | ||
| 
						 | 
					35fab4d9aa | ||
| 
						 | 
					2078320e14 | ||
| 
						 | 
					46a29ac020 | ||
| 
						 | 
					d9c98b57c9 | ||
| 
						 | 
					9ce9de7942 | ||
| 
						 | 
					1409a8ef80 | ||
| 
						 | 
					bff4a84864 | ||
| 
						 | 
					77524a1ad2 | ||
| 
						 | 
					a171755aa6 | ||
| 
						 | 
					1d5f2cb395 | ||
| 
						 | 
					86ace13645 | ||
| 
						 | 
					57b1547333 | ||
| 
						 | 
					efee8728d1 | ||
| 
						 | 
					9ae5202a78 | ||
| 
						 | 
					07322469b7 | ||
| 
						 | 
					b797fcf578 | ||
| 
						 | 
					7725fdff77 | ||
| 
						 | 
					e5298ca598 | ||
| 
						 | 
					92d54e287a | ||
| 
						 | 
					2d9656e82a | ||
| 
						 | 
					8674e92349 | ||
| 
						 | 
					f5bbc36a91 | ||
| 
						 | 
					b058565419 | ||
| 
						 | 
					2c6b951822 | ||
| 
						 | 
					9b072525a6 | ||
| 
						 | 
					e2e0e3a555 | ||
| 
						 | 
					f37f72781a | ||
| 
						 | 
					9618fe795f | ||
| 
						 | 
					2e3231b051 | ||
| 
						 | 
					7fd14852db | ||
| 
						 | 
					73728a78c7 | ||
| 
						 | 
					3f55d507dd | ||
| 
						 | 
					13cec7830f | ||
| 
						 | 
					665d65d164 | ||
| 
						 | 
					21adc6b0c5 | ||
| 
						 | 
					3529a1b59f | ||
| 
						 | 
					8a0a3632ac | ||
| 
						 | 
					e6f9e07a9e | ||
| 
						 | 
					755695c537 | ||
| 
						 | 
					dba423b6e7 | ||
| 
						 | 
					83cda8c605 | ||
| 
						 | 
					6856c690f3 | ||
| 
						 | 
					a9b3964675 | ||
| 
						 | 
					44b360a521 | ||
| 
						 | 
					699524ea6a | ||
| 
						 | 
					2f4826b4d8 | ||
| 
						 | 
					83160ef48c | ||
| 
						 | 
					76bfbd3006 | ||
| 
						 | 
					73c9b1dd20 | ||
| 
						 | 
					da878ec588 | ||
| 
						 | 
					f3c90e4b3a | ||
| 
						 | 
					f3959743b6 | ||
| 
						 | 
					70a58a4cd4 | ||
| 
						 | 
					600bb6f004 | ||
| 
						 | 
					d5ccf3404b | ||
| 
						 | 
					b17762a5ae | ||
| 
						 | 
					1f2325b441 | ||
| 
						 | 
					b1757616d8 | ||
| 
						 | 
					871f300a2c | ||
| 
						 | 
					650c8f2582 | ||
| 
						 | 
					28ae85c10b | ||
| 
						 | 
					ce37ceeb15 | ||
| 
						 | 
					706c847b17 | ||
| 
						 | 
					82be8d7f8d | ||
| 
						 | 
					22e55d2e37 | ||
| 
						 | 
					31844753e8 | ||
| 
						 | 
					0ad36c2f62 | ||
| 
						 | 
					79143ecad7 | ||
| 
						 | 
					62dba864d7 | ||
| 
						 | 
					21a763e55a | ||
| 
						 | 
					c81d6306e5 | ||
| 
						 | 
					7270bcc9d5 | ||
| 
						 | 
					3c39f89281 | ||
| 
						 | 
					e34f38d3fc | ||
| 
						 | 
					a207cc1580 | ||
| 
						 | 
					b219d3181e | ||
| 
						 | 
					bc848239ff | ||
| 
						 | 
					0285e018f4 | ||
| 
						 | 
					01f1e7e955 | ||
| 
						 | 
					ef34cfb38a | ||
| 
						 | 
					1e0ba1d7aa | ||
| 
						 | 
					6b0bafcafb | ||
| 
						 | 
					c0856a39bd | ||
| 
						 | 
					270820a05c | ||
| 
						 | 
					358660837c | ||
| 
						 | 
					e387c66aad | ||
| 
						 | 
					e774440e77 | ||
| 
						 | 
					c7295cd5f0 | ||
| 
						 | 
					65fe248d66 | ||
| 
						 | 
					5c479c9a45 | ||
| 
						 | 
					6509ddff4c | ||
| 
						 | 
					ee78aaf29c | ||
| 
						 | 
					a5f59cb81a | ||
| 
						 | 
					a99011fd5c | ||
| 
						 | 
					598374bb1c | ||
| 
						 | 
					b1acd4461e | ||
| 
						 | 
					0e2fe6158c | ||
| 
						 | 
					f8b9e6f7cc | ||
| 
						 | 
					8fc7451000 | ||
| 
						 | 
					aaab91cc20 | ||
| 
						 | 
					cde89c59b1 | ||
| 
						 | 
					0ce04dd037 | ||
| 
						 | 
					8e4c6df830 | ||
| 
						 | 
					da54431af5 | ||
| 
						 | 
					ace68aa492 | ||
| 
						 | 
					eee0cad2b6 | ||
| 
						 | 
					785b30aeb6 | ||
| 
						 | 
					3eb958dc6c | ||
| 
						 | 
					cd389851b9 | ||
| 
						 | 
					7ee8dae9c5 | ||
| 
						 | 
					4b9bb4ee71 | ||
| 
						 | 
					aa9fafe5c3 | ||
| 
						 | 
					e0c1214cdd | ||
| 
						 | 
					82612af053 | ||
| 
						 | 
					2f6439a239 | ||
| 
						 | 
					44ff5b7599 | ||
| 
						 | 
					eb6c8b696f | ||
| 
						 | 
					177d1aa841 | ||
| 
						 | 
					021153bc49 | ||
| 
						 | 
					89810a70ec | ||
| 
						 | 
					504ff4ec59 | ||
| 
						 | 
					04a5531a46 | ||
| 
						 | 
					5a15e409cf | ||
| 
						 | 
					747438e334 | ||
| 
						 | 
					10211bf7da | ||
| 
						 | 
					09f8aaec1e | ||
| 
						 | 
					9f509067d4 | ||
| 
						 | 
					a085c85db6 | ||
| 
						 | 
					c6a7459bc9 | ||
| 
						 | 
					3d06443c2c | ||
| 
						 | 
					3f49e555fc | ||
| 
						 | 
					e156172e7c | ||
| 
						 | 
					c9385972bd | ||
| 
						 | 
					b411ee115f | ||
| 
						 | 
					63fb94127a | ||
| 
						 | 
					37fc9c1544 | ||
| 
						 | 
					9055b90aef | ||
| 
						 | 
					3f25ae9b43 | ||
| 
						 | 
					a288a086f7 | ||
| 
						 | 
					25a398fc24 | ||
| 
						 | 
					0b438b5250 | ||
| 
						 | 
					0d2382e666 | ||
| 
						 | 
					56b06c7433 | ||
| 
						 | 
					84f690d318 | ||
| 
						 | 
					fef76514ed | ||
| 
						 | 
					1bc8ce6f23 | ||
| 
						 | 
					920a936511 | ||
| 
						 | 
					648c28b332 | ||
| 
						 | 
					d9282f6102 | ||
| 
						 | 
					1ca0e5c5e7 | ||
| 
						 | 
					537bf34f94 | ||
| 
						 | 
					5982287f48 | ||
| 
						 | 
					24f5bb1e22 | ||
| 
						 | 
					499f599e95 | ||
| 
						 | 
					71ce0e790b | ||
| 
						 | 
					05dfb867a3 | ||
| 
						 | 
					2345eaf4ee | ||
| 
						 | 
					7b3d57c9e9 | ||
| 
						 | 
					9ebea04e19 | ||
| 
						 | 
					0cefbb6df0 | ||
| 
						 | 
					272a72d7bc | ||
| 
						 | 
					75f11dc5d6 | ||
| 
						 | 
					383b4c480e | ||
| 
						 | 
					610c0071cc | ||
| 
						 | 
					08887909fa | ||
| 
						 | 
					6bd78a815b | ||
| 
						 | 
					34e8fd7400 | 
							
								
								
									
										48
									
								
								.cvsignore
									
									
									
									
									
								
							
							
						
						
									
										48
									
								
								.cvsignore
									
									
									
									
									
								
							@@ -1,48 +0,0 @@
 | 
			
		||||
Makefile
 | 
			
		||||
Makefile.in
 | 
			
		||||
aclocal.m4
 | 
			
		||||
config.cache
 | 
			
		||||
config.h
 | 
			
		||||
config.h.in
 | 
			
		||||
config.log
 | 
			
		||||
config.sub
 | 
			
		||||
config.guess
 | 
			
		||||
config.status
 | 
			
		||||
configure
 | 
			
		||||
gtopConf.sh
 | 
			
		||||
i386-bsdi
 | 
			
		||||
i686-pc-linux-gnu
 | 
			
		||||
intl
 | 
			
		||||
libgtop-mirror.sh.swp
 | 
			
		||||
libgtopConf.sh
 | 
			
		||||
libtool
 | 
			
		||||
ltconfig
 | 
			
		||||
ltmain.sh
 | 
			
		||||
macros
 | 
			
		||||
stamp-h
 | 
			
		||||
stamp-h.in
 | 
			
		||||
sun4
 | 
			
		||||
sun4sol2
 | 
			
		||||
support
 | 
			
		||||
i386-freebsd
 | 
			
		||||
alpha-dec-osf3.0
 | 
			
		||||
i686-pc-linux-gnu-linux
 | 
			
		||||
libgtop-config
 | 
			
		||||
ABOUT-NLS
 | 
			
		||||
libgtop.spec
 | 
			
		||||
libgtop*.tar.gz
 | 
			
		||||
*-debstamp
 | 
			
		||||
libgtop*.pc
 | 
			
		||||
autom4te.cache
 | 
			
		||||
COPYING
 | 
			
		||||
INSTALL
 | 
			
		||||
install-sh
 | 
			
		||||
missing
 | 
			
		||||
mkinstalldirs
 | 
			
		||||
libgtopconfig.h
 | 
			
		||||
intltool-extract.in
 | 
			
		||||
intltool-extract
 | 
			
		||||
intltool-merge.in
 | 
			
		||||
intltool-merge
 | 
			
		||||
intltool-update.in
 | 
			
		||||
intltool-update
 | 
			
		||||
							
								
								
									
										91
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										91
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,91 @@
 | 
			
		||||
*.a
 | 
			
		||||
*.bak
 | 
			
		||||
*.core
 | 
			
		||||
*.diff
 | 
			
		||||
*.gmo
 | 
			
		||||
*.header
 | 
			
		||||
*.in
 | 
			
		||||
*.la
 | 
			
		||||
*.lo
 | 
			
		||||
*.o
 | 
			
		||||
*.out
 | 
			
		||||
*.patch
 | 
			
		||||
*.pot
 | 
			
		||||
*.s
 | 
			
		||||
*.sed
 | 
			
		||||
*.sin
 | 
			
		||||
*.stamp
 | 
			
		||||
*.swp
 | 
			
		||||
*~
 | 
			
		||||
.deps
 | 
			
		||||
.libs
 | 
			
		||||
ABOUT-NLS
 | 
			
		||||
INSTALL
 | 
			
		||||
Makefile
 | 
			
		||||
Makevars.template
 | 
			
		||||
Rules-quot
 | 
			
		||||
aclocal.m4
 | 
			
		||||
autom4te.cache/
 | 
			
		||||
compile
 | 
			
		||||
config.guess
 | 
			
		||||
config.h
 | 
			
		||||
config.log
 | 
			
		||||
config.status
 | 
			
		||||
config.sub
 | 
			
		||||
configure
 | 
			
		||||
depcomp
 | 
			
		||||
doc/libgtop2.info
 | 
			
		||||
doc/mdate-sh
 | 
			
		||||
doc/reference/html/
 | 
			
		||||
doc/reference/libgtop-decl-list.txt
 | 
			
		||||
doc/reference/libgtop-decl.txt
 | 
			
		||||
doc/reference/libgtop-undeclared.txt
 | 
			
		||||
doc/reference/libgtop-undocumented.txt
 | 
			
		||||
doc/reference/libgtop-unused.txt
 | 
			
		||||
doc/reference/libgtop.args
 | 
			
		||||
doc/reference/libgtop.hierarchy
 | 
			
		||||
doc/reference/libgtop.interfaces
 | 
			
		||||
doc/reference/libgtop.prerequisites
 | 
			
		||||
doc/reference/libgtop.signals
 | 
			
		||||
doc/reference/tmpl/
 | 
			
		||||
doc/reference/version.xml
 | 
			
		||||
doc/reference/xml/
 | 
			
		||||
doc/stamp-vti
 | 
			
		||||
doc/texinfo.tex
 | 
			
		||||
doc/version.texi
 | 
			
		||||
examples/affinity
 | 
			
		||||
examples/df
 | 
			
		||||
examples/first
 | 
			
		||||
examples/free
 | 
			
		||||
examples/mountlist
 | 
			
		||||
examples/netlist
 | 
			
		||||
examples/netload
 | 
			
		||||
examples/openfiles
 | 
			
		||||
examples/pprint
 | 
			
		||||
examples/procargs
 | 
			
		||||
examples/proclist
 | 
			
		||||
examples/procmap
 | 
			
		||||
examples/second
 | 
			
		||||
examples/smp
 | 
			
		||||
examples/sysdeps
 | 
			
		||||
examples/timings
 | 
			
		||||
examples/wd
 | 
			
		||||
gtk-doc.make
 | 
			
		||||
install-sh
 | 
			
		||||
lib/GTop-2.0.gir
 | 
			
		||||
lib/GTop-2.0.typelib
 | 
			
		||||
lib/lib.c
 | 
			
		||||
libgtop-2.0.pc
 | 
			
		||||
libgtop.spec
 | 
			
		||||
libgtopconfig.h
 | 
			
		||||
libtool
 | 
			
		||||
ltmain.sh
 | 
			
		||||
m4/
 | 
			
		||||
missing
 | 
			
		||||
po/POTFILES
 | 
			
		||||
po/stamp-it
 | 
			
		||||
src/daemon/libgtop_daemon2
 | 
			
		||||
src/daemon/libgtop_server2
 | 
			
		||||
stamp-h1
 | 
			
		||||
stamp-po
 | 
			
		||||
tmp-*
 | 
			
		||||
							
								
								
									
										340
									
								
								COPYING
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										340
									
								
								COPYING
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,340 @@
 | 
			
		||||
		    GNU GENERAL PUBLIC LICENSE
 | 
			
		||||
		       Version 2, June 1991
 | 
			
		||||
 | 
			
		||||
 Copyright (C) 1989, 1991 Free Software Foundation, Inc.
 | 
			
		||||
     51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
 | 
			
		||||
 Everyone is permitted to copy and distribute verbatim copies
 | 
			
		||||
 of this license document, but changing it is not allowed.
 | 
			
		||||
 | 
			
		||||
			    Preamble
 | 
			
		||||
 | 
			
		||||
  The licenses for most software are designed to take away your
 | 
			
		||||
freedom to share and change it.  By contrast, the GNU General Public
 | 
			
		||||
License is intended to guarantee your freedom to share and change free
 | 
			
		||||
software--to make sure the software is free for all its users.  This
 | 
			
		||||
General Public License applies to most of the Free Software
 | 
			
		||||
Foundation's software and to any other program whose authors commit to
 | 
			
		||||
using it.  (Some other Free Software Foundation software is covered by
 | 
			
		||||
the GNU Library General Public License instead.)  You can apply it to
 | 
			
		||||
your programs, too.
 | 
			
		||||
 | 
			
		||||
  When we speak of free software, we are referring to freedom, not
 | 
			
		||||
price.  Our General Public Licenses are designed to make sure that you
 | 
			
		||||
have the freedom to distribute copies of free software (and charge for
 | 
			
		||||
this service if you wish), that you receive source code or can get it
 | 
			
		||||
if you want it, that you can change the software or use pieces of it
 | 
			
		||||
in new free programs; and that you know you can do these things.
 | 
			
		||||
 | 
			
		||||
  To protect your rights, we need to make restrictions that forbid
 | 
			
		||||
anyone to deny you these rights or to ask you to surrender the rights.
 | 
			
		||||
These restrictions translate to certain responsibilities for you if you
 | 
			
		||||
distribute copies of the software, or if you modify it.
 | 
			
		||||
 | 
			
		||||
  For example, if you distribute copies of such a program, whether
 | 
			
		||||
gratis or for a fee, you must give the recipients all the rights that
 | 
			
		||||
you have.  You must make sure that they, too, receive or can get the
 | 
			
		||||
source code.  And you must show them these terms so they know their
 | 
			
		||||
rights.
 | 
			
		||||
 | 
			
		||||
  We protect your rights with two steps: (1) copyright the software, and
 | 
			
		||||
(2) offer you this license which gives you legal permission to copy,
 | 
			
		||||
distribute and/or modify the software.
 | 
			
		||||
 | 
			
		||||
  Also, for each author's protection and ours, we want to make certain
 | 
			
		||||
that everyone understands that there is no warranty for this free
 | 
			
		||||
software.  If the software is modified by someone else and passed on, we
 | 
			
		||||
want its recipients to know that what they have is not the original, so
 | 
			
		||||
that any problems introduced by others will not reflect on the original
 | 
			
		||||
authors' reputations.
 | 
			
		||||
 | 
			
		||||
  Finally, any free program is threatened constantly by software
 | 
			
		||||
patents.  We wish to avoid the danger that redistributors of a free
 | 
			
		||||
program will individually obtain patent licenses, in effect making the
 | 
			
		||||
program proprietary.  To prevent this, we have made it clear that any
 | 
			
		||||
patent must be licensed for everyone's free use or not licensed at all.
 | 
			
		||||
 | 
			
		||||
  The precise terms and conditions for copying, distribution and
 | 
			
		||||
modification follow.
 | 
			
		||||
 | 
			
		||||
		    GNU GENERAL PUBLIC LICENSE
 | 
			
		||||
   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
 | 
			
		||||
 | 
			
		||||
  0. This License applies to any program or other work which contains
 | 
			
		||||
a notice placed by the copyright holder saying it may be distributed
 | 
			
		||||
under the terms of this General Public License.  The "Program", below,
 | 
			
		||||
refers to any such program or work, and a "work based on the Program"
 | 
			
		||||
means either the Program or any derivative work under copyright law:
 | 
			
		||||
that is to say, a work containing the Program or a portion of it,
 | 
			
		||||
either verbatim or with modifications and/or translated into another
 | 
			
		||||
language.  (Hereinafter, translation is included without limitation in
 | 
			
		||||
the term "modification".)  Each licensee is addressed as "you".
 | 
			
		||||
 | 
			
		||||
Activities other than copying, distribution and modification are not
 | 
			
		||||
covered by this License; they are outside its scope.  The act of
 | 
			
		||||
running the Program is not restricted, and the output from the Program
 | 
			
		||||
is covered only if its contents constitute a work based on the
 | 
			
		||||
Program (independent of having been made by running the Program).
 | 
			
		||||
Whether that is true depends on what the Program does.
 | 
			
		||||
 | 
			
		||||
  1. You may copy and distribute verbatim copies of the Program's
 | 
			
		||||
source code as you receive it, in any medium, provided that you
 | 
			
		||||
conspicuously and appropriately publish on each copy an appropriate
 | 
			
		||||
copyright notice and disclaimer of warranty; keep intact all the
 | 
			
		||||
notices that refer to this License and to the absence of any warranty;
 | 
			
		||||
and give any other recipients of the Program a copy of this License
 | 
			
		||||
along with the Program.
 | 
			
		||||
 | 
			
		||||
You may charge a fee for the physical act of transferring a copy, and
 | 
			
		||||
you may at your option offer warranty protection in exchange for a fee.
 | 
			
		||||
 | 
			
		||||
  2. You may modify your copy or copies of the Program or any portion
 | 
			
		||||
of it, thus forming a work based on the Program, and copy and
 | 
			
		||||
distribute such modifications or work under the terms of Section 1
 | 
			
		||||
above, provided that you also meet all of these conditions:
 | 
			
		||||
 | 
			
		||||
    a) You must cause the modified files to carry prominent notices
 | 
			
		||||
    stating that you changed the files and the date of any change.
 | 
			
		||||
 | 
			
		||||
    b) You must cause any work that you distribute or publish, that in
 | 
			
		||||
    whole or in part contains or is derived from the Program or any
 | 
			
		||||
    part thereof, to be licensed as a whole at no charge to all third
 | 
			
		||||
    parties under the terms of this License.
 | 
			
		||||
 | 
			
		||||
    c) If the modified program normally reads commands interactively
 | 
			
		||||
    when run, you must cause it, when started running for such
 | 
			
		||||
    interactive use in the most ordinary way, to print or display an
 | 
			
		||||
    announcement including an appropriate copyright notice and a
 | 
			
		||||
    notice that there is no warranty (or else, saying that you provide
 | 
			
		||||
    a warranty) and that users may redistribute the program under
 | 
			
		||||
    these conditions, and telling the user how to view a copy of this
 | 
			
		||||
    License.  (Exception: if the Program itself is interactive but
 | 
			
		||||
    does not normally print such an announcement, your work based on
 | 
			
		||||
    the Program is not required to print an announcement.)
 | 
			
		||||
 | 
			
		||||
These requirements apply to the modified work as a whole.  If
 | 
			
		||||
identifiable sections of that work are not derived from the Program,
 | 
			
		||||
and can be reasonably considered independent and separate works in
 | 
			
		||||
themselves, then this License, and its terms, do not apply to those
 | 
			
		||||
sections when you distribute them as separate works.  But when you
 | 
			
		||||
distribute the same sections as part of a whole which is a work based
 | 
			
		||||
on the Program, the distribution of the whole must be on the terms of
 | 
			
		||||
this License, whose permissions for other licensees extend to the
 | 
			
		||||
entire whole, and thus to each and every part regardless of who wrote it.
 | 
			
		||||
 | 
			
		||||
Thus, it is not the intent of this section to claim rights or contest
 | 
			
		||||
your rights to work written entirely by you; rather, the intent is to
 | 
			
		||||
exercise the right to control the distribution of derivative or
 | 
			
		||||
collective works based on the Program.
 | 
			
		||||
 | 
			
		||||
In addition, mere aggregation of another work not based on the Program
 | 
			
		||||
with the Program (or with a work based on the Program) on a volume of
 | 
			
		||||
a storage or distribution medium does not bring the other work under
 | 
			
		||||
the scope of this License.
 | 
			
		||||
 | 
			
		||||
  3. You may copy and distribute the Program (or a work based on it,
 | 
			
		||||
under Section 2) in object code or executable form under the terms of
 | 
			
		||||
Sections 1 and 2 above provided that you also do one of the following:
 | 
			
		||||
 | 
			
		||||
    a) Accompany it with the complete corresponding machine-readable
 | 
			
		||||
    source code, which must be distributed under the terms of Sections
 | 
			
		||||
    1 and 2 above on a medium customarily used for software interchange; or,
 | 
			
		||||
 | 
			
		||||
    b) Accompany it with a written offer, valid for at least three
 | 
			
		||||
    years, to give any third party, for a charge no more than your
 | 
			
		||||
    cost of physically performing source distribution, a complete
 | 
			
		||||
    machine-readable copy of the corresponding source code, to be
 | 
			
		||||
    distributed under the terms of Sections 1 and 2 above on a medium
 | 
			
		||||
    customarily used for software interchange; or,
 | 
			
		||||
 | 
			
		||||
    c) Accompany it with the information you received as to the offer
 | 
			
		||||
    to distribute corresponding source code.  (This alternative is
 | 
			
		||||
    allowed only for noncommercial distribution and only if you
 | 
			
		||||
    received the program in object code or executable form with such
 | 
			
		||||
    an offer, in accord with Subsection b above.)
 | 
			
		||||
 | 
			
		||||
The source code for a work means the preferred form of the work for
 | 
			
		||||
making modifications to it.  For an executable work, complete source
 | 
			
		||||
code means all the source code for all modules it contains, plus any
 | 
			
		||||
associated interface definition files, plus the scripts used to
 | 
			
		||||
control compilation and installation of the executable.  However, as a
 | 
			
		||||
special exception, the source code distributed need not include
 | 
			
		||||
anything that is normally distributed (in either source or binary
 | 
			
		||||
form) with the major components (compiler, kernel, and so on) of the
 | 
			
		||||
operating system on which the executable runs, unless that component
 | 
			
		||||
itself accompanies the executable.
 | 
			
		||||
 | 
			
		||||
If distribution of executable or object code is made by offering
 | 
			
		||||
access to copy from a designated place, then offering equivalent
 | 
			
		||||
access to copy the source code from the same place counts as
 | 
			
		||||
distribution of the source code, even though third parties are not
 | 
			
		||||
compelled to copy the source along with the object code.
 | 
			
		||||
 | 
			
		||||
  4. You may not copy, modify, sublicense, or distribute the Program
 | 
			
		||||
except as expressly provided under this License.  Any attempt
 | 
			
		||||
otherwise to copy, modify, sublicense or distribute the Program is
 | 
			
		||||
void, and will automatically terminate your rights under this License.
 | 
			
		||||
However, parties who have received copies, or rights, from you under
 | 
			
		||||
this License will not have their licenses terminated so long as such
 | 
			
		||||
parties remain in full compliance.
 | 
			
		||||
 | 
			
		||||
  5. You are not required to accept this License, since you have not
 | 
			
		||||
signed it.  However, nothing else grants you permission to modify or
 | 
			
		||||
distribute the Program or its derivative works.  These actions are
 | 
			
		||||
prohibited by law if you do not accept this License.  Therefore, by
 | 
			
		||||
modifying or distributing the Program (or any work based on the
 | 
			
		||||
Program), you indicate your acceptance of this License to do so, and
 | 
			
		||||
all its terms and conditions for copying, distributing or modifying
 | 
			
		||||
the Program or works based on it.
 | 
			
		||||
 | 
			
		||||
  6. Each time you redistribute the Program (or any work based on the
 | 
			
		||||
Program), the recipient automatically receives a license from the
 | 
			
		||||
original licensor to copy, distribute or modify the Program subject to
 | 
			
		||||
these terms and conditions.  You may not impose any further
 | 
			
		||||
restrictions on the recipients' exercise of the rights granted herein.
 | 
			
		||||
You are not responsible for enforcing compliance by third parties to
 | 
			
		||||
this License.
 | 
			
		||||
 | 
			
		||||
  7. If, as a consequence of a court judgment or allegation of patent
 | 
			
		||||
infringement or for any other reason (not limited to patent issues),
 | 
			
		||||
conditions are imposed on you (whether by court order, agreement or
 | 
			
		||||
otherwise) that contradict the conditions of this License, they do not
 | 
			
		||||
excuse you from the conditions of this License.  If you cannot
 | 
			
		||||
distribute so as to satisfy simultaneously your obligations under this
 | 
			
		||||
License and any other pertinent obligations, then as a consequence you
 | 
			
		||||
may not distribute the Program at all.  For example, if a patent
 | 
			
		||||
license would not permit royalty-free redistribution of the Program by
 | 
			
		||||
all those who receive copies directly or indirectly through you, then
 | 
			
		||||
the only way you could satisfy both it and this License would be to
 | 
			
		||||
refrain entirely from distribution of the Program.
 | 
			
		||||
 | 
			
		||||
If any portion of this section is held invalid or unenforceable under
 | 
			
		||||
any particular circumstance, the balance of the section is intended to
 | 
			
		||||
apply and the section as a whole is intended to apply in other
 | 
			
		||||
circumstances.
 | 
			
		||||
 | 
			
		||||
It is not the purpose of this section to induce you to infringe any
 | 
			
		||||
patents or other property right claims or to contest validity of any
 | 
			
		||||
such claims; this section has the sole purpose of protecting the
 | 
			
		||||
integrity of the free software distribution system, which is
 | 
			
		||||
implemented by public license practices.  Many people have made
 | 
			
		||||
generous contributions to the wide range of software distributed
 | 
			
		||||
through that system in reliance on consistent application of that
 | 
			
		||||
system; it is up to the author/donor to decide if he or she is willing
 | 
			
		||||
to distribute software through any other system and a licensee cannot
 | 
			
		||||
impose that choice.
 | 
			
		||||
 | 
			
		||||
This section is intended to make thoroughly clear what is believed to
 | 
			
		||||
be a consequence of the rest of this License.
 | 
			
		||||
 | 
			
		||||
  8. If the distribution and/or use of the Program is restricted in
 | 
			
		||||
certain countries either by patents or by copyrighted interfaces, the
 | 
			
		||||
original copyright holder who places the Program under this License
 | 
			
		||||
may add an explicit geographical distribution limitation excluding
 | 
			
		||||
those countries, so that distribution is permitted only in or among
 | 
			
		||||
countries not thus excluded.  In such case, this License incorporates
 | 
			
		||||
the limitation as if written in the body of this License.
 | 
			
		||||
 | 
			
		||||
  9. The Free Software Foundation may publish revised and/or new versions
 | 
			
		||||
of the General Public License from time to time.  Such new versions will
 | 
			
		||||
be similar in spirit to the present version, but may differ in detail to
 | 
			
		||||
address new problems or concerns.
 | 
			
		||||
 | 
			
		||||
Each version is given a distinguishing version number.  If the Program
 | 
			
		||||
specifies a version number of this License which applies to it and "any
 | 
			
		||||
later version", you have the option of following the terms and conditions
 | 
			
		||||
either of that version or of any later version published by the Free
 | 
			
		||||
Software Foundation.  If the Program does not specify a version number of
 | 
			
		||||
this License, you may choose any version ever published by the Free Software
 | 
			
		||||
Foundation.
 | 
			
		||||
 | 
			
		||||
  10. If you wish to incorporate parts of the Program into other free
 | 
			
		||||
programs whose distribution conditions are different, write to the author
 | 
			
		||||
to ask for permission.  For software which is copyrighted by the Free
 | 
			
		||||
Software Foundation, write to the Free Software Foundation; we sometimes
 | 
			
		||||
make exceptions for this.  Our decision will be guided by the two goals
 | 
			
		||||
of preserving the free status of all derivatives of our free software and
 | 
			
		||||
of promoting the sharing and reuse of software generally.
 | 
			
		||||
 | 
			
		||||
			    NO WARRANTY
 | 
			
		||||
 | 
			
		||||
  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
 | 
			
		||||
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
 | 
			
		||||
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
 | 
			
		||||
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
 | 
			
		||||
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
 | 
			
		||||
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
 | 
			
		||||
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
 | 
			
		||||
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
 | 
			
		||||
REPAIR OR CORRECTION.
 | 
			
		||||
 | 
			
		||||
  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
 | 
			
		||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
 | 
			
		||||
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
 | 
			
		||||
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
 | 
			
		||||
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
 | 
			
		||||
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
 | 
			
		||||
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
 | 
			
		||||
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
 | 
			
		||||
POSSIBILITY OF SUCH DAMAGES.
 | 
			
		||||
 | 
			
		||||
		     END OF TERMS AND CONDITIONS
 | 
			
		||||
 | 
			
		||||
	    How to Apply These Terms to Your New Programs
 | 
			
		||||
 | 
			
		||||
  If you develop a new program, and you want it to be of the greatest
 | 
			
		||||
possible use to the public, the best way to achieve this is to make it
 | 
			
		||||
free software which everyone can redistribute and change under these terms.
 | 
			
		||||
 | 
			
		||||
  To do so, attach the following notices to the program.  It is safest
 | 
			
		||||
to attach them to the start of each source file to most effectively
 | 
			
		||||
convey the exclusion of warranty; and each file should have at least
 | 
			
		||||
the "copyright" line and a pointer to where the full notice is found.
 | 
			
		||||
 | 
			
		||||
    <one line to give the program's name and a brief idea of what it does.>
 | 
			
		||||
    Copyright (C) <year>  <name of author>
 | 
			
		||||
 | 
			
		||||
    This program is free software; you can redistribute it and/or modify
 | 
			
		||||
    it under the terms of the GNU General Public License as published by
 | 
			
		||||
    the Free Software Foundation; either version 2 of the License, or
 | 
			
		||||
    (at your option) any later version.
 | 
			
		||||
 | 
			
		||||
    This program is distributed in the hope that it will be useful,
 | 
			
		||||
    but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
			
		||||
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
			
		||||
    GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
    You should have received a copy of the GNU General Public License
 | 
			
		||||
    along with this program; if not, write to the Free Software
 | 
			
		||||
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Also add information on how to contact you by electronic and paper mail.
 | 
			
		||||
 | 
			
		||||
If the program is interactive, make it output a short notice like this
 | 
			
		||||
when it starts in an interactive mode:
 | 
			
		||||
 | 
			
		||||
    Gnomovision version 69, Copyright (C) year  name of author
 | 
			
		||||
    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
 | 
			
		||||
    This is free software, and you are welcome to redistribute it
 | 
			
		||||
    under certain conditions; type `show c' for details.
 | 
			
		||||
 | 
			
		||||
The hypothetical commands `show w' and `show c' should show the appropriate
 | 
			
		||||
parts of the General Public License.  Of course, the commands you use may
 | 
			
		||||
be called something other than `show w' and `show c'; they could even be
 | 
			
		||||
mouse-clicks or menu items--whatever suits your program.
 | 
			
		||||
 | 
			
		||||
You should also get your employer (if you work as a programmer) or your
 | 
			
		||||
school, if any, to sign a "copyright disclaimer" for the program, if
 | 
			
		||||
necessary.  Here is a sample; alter the names:
 | 
			
		||||
 | 
			
		||||
  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
 | 
			
		||||
  `Gnomovision' (which makes passes at compilers) written by James Hacker.
 | 
			
		||||
 | 
			
		||||
  <signature of Ty Coon>, 1 April 1989
 | 
			
		||||
  Ty Coon, President of Vice
 | 
			
		||||
 | 
			
		||||
This General Public License does not permit incorporating your program into
 | 
			
		||||
proprietary programs.  If your program is a subroutine library, you may
 | 
			
		||||
consider it more useful to permit linking proprietary applications with the
 | 
			
		||||
library.  If this is what you want to do, use the GNU Library General
 | 
			
		||||
Public License instead of this License.
 | 
			
		||||
							
								
								
									
										225
									
								
								ChangeLog
									
									
									
									
									
								
							
							
						
						
									
										225
									
								
								ChangeLog
									
									
									
									
									
								
							@@ -1,3 +1,228 @@
 | 
			
		||||
2007-05-19  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	* features.def:
 | 
			
		||||
	* include/glibtop/proclist.h:
 | 
			
		||||
 | 
			
		||||
	Small API change.
 | 
			
		||||
	get_proclist returns pid_t instead of unsigned for consistency.
 | 
			
		||||
	I have checked many archs and this doesn't break the ABI.
 | 
			
		||||
 | 
			
		||||
2007-05-17  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	* configure.in:
 | 
			
		||||
 | 
			
		||||
	Bumped version number.
 | 
			
		||||
 | 
			
		||||
2007-05-14  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	* include/glibtop/Makefile.am:
 | 
			
		||||
	* lib/Makefile.am:
 | 
			
		||||
 | 
			
		||||
	Fixed dist.
 | 
			
		||||
 | 
			
		||||
2007-05-13  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	* NEWS:
 | 
			
		||||
	* configure.in:
 | 
			
		||||
	
 | 
			
		||||
	Released 2.19.2.
 | 
			
		||||
 | 
			
		||||
2007-05-10  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	* lib/libgtop.sym:
 | 
			
		||||
 | 
			
		||||
	Added missing *_p symbols.
 | 
			
		||||
 | 
			
		||||
2007-05-07  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	* configure.in:
 | 
			
		||||
	* lib/Makefile.am:
 | 
			
		||||
	* lib/libgtop.sym:
 | 
			
		||||
 | 
			
		||||
	Updated libtool version.
 | 
			
		||||
	Now uses a symbol list instead of a regex.
 | 
			
		||||
 | 
			
		||||
2007-05-07  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	* New API to get cwd, root and exe path
 | 
			
		||||
	of a process. API not frozen yet.
 | 
			
		||||
 | 
			
		||||
2007-04-27  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	Got rid of InodeDB.
 | 
			
		||||
	This feature was optionnal and i have never heard of anyone using
 | 
			
		||||
	it. I have never touched it so it may be broken since 2.6.
 | 
			
		||||
 | 
			
		||||
2007-04-11  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	* *:
 | 
			
		||||
	
 | 
			
		||||
	Renamed all glibtop_init_xxx functions
 | 
			
		||||
	to _glibtop_init_xxx so they get internal visibility.
 | 
			
		||||
 | 
			
		||||
	* configure.in:
 | 
			
		||||
	
 | 
			
		||||
	Bumped version number.
 | 
			
		||||
 | 
			
		||||
2007-03-13  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	* MAINTAINERS:
 | 
			
		||||
	
 | 
			
		||||
	Updated.
 | 
			
		||||
 | 
			
		||||
2007-02-25  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	* NEWS:
 | 
			
		||||
	
 | 
			
		||||
	Released 2.14.8.
 | 
			
		||||
 | 
			
		||||
2007-02-20  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	* *:
 | 
			
		||||
	
 | 
			
		||||
	Removed noisy $Id$.
 | 
			
		||||
 | 
			
		||||
2007-02-18  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	* configure.in:
 | 
			
		||||
	* libgtop-sysdeps.m4:
 | 
			
		||||
	* sysdeps/Makefile.am:
 | 
			
		||||
	
 | 
			
		||||
	Huge (k)FreeBSD update.
 | 
			
		||||
	(k)FreeBSD support is freebsd/
 | 
			
		||||
	Other BSD are in bsd/
 | 
			
		||||
	
 | 
			
		||||
	Patch by Joe Marcus Clarke  <marcus@freebsd.org>
 | 
			
		||||
	Alexander Nedotsukov  <bland@FreeBSD.org>
 | 
			
		||||
	
 | 
			
		||||
	Closes #407693.
 | 
			
		||||
 | 
			
		||||
2007-02-14  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	* lib/read.c: (glibtop_read_l):
 | 
			
		||||
	* lib/write.c: (glibtop_write_l):
 | 
			
		||||
 | 
			
		||||
	Handle EINTR.
 | 
			
		||||
	
 | 
			
		||||
	* configure.in:
 | 
			
		||||
	
 | 
			
		||||
	Post release version bump.
 | 
			
		||||
 | 
			
		||||
2007-02-10  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	* NEWS:
 | 
			
		||||
	* configure.in:
 | 
			
		||||
	
 | 
			
		||||
	Released 2.14.7.
 | 
			
		||||
 | 
			
		||||
2007-01-14  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	* NEWS:
 | 
			
		||||
 | 
			
		||||
	Released 2.14.6.
 | 
			
		||||
 | 
			
		||||
2007-01-11  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	* configure.in:
 | 
			
		||||
	
 | 
			
		||||
	Bumped version number to 2.14.6.
 | 
			
		||||
	
 | 
			
		||||
	* *:
 | 
			
		||||
	
 | 
			
		||||
	Got rid of CVS admin files.
 | 
			
		||||
 | 
			
		||||
2006-12-03  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	* doc/reference/libgtop-docs.xml:
 | 
			
		||||
	* glibtop.h:
 | 
			
		||||
	* include/glibtop/sysinfo.h:
 | 
			
		||||
	
 | 
			
		||||
	Made gtk-doc happy in order to dist.
 | 
			
		||||
 | 
			
		||||
2006-12-03  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	* NEWS:
 | 
			
		||||
	
 | 
			
		||||
	Released 2.14.5.
 | 
			
		||||
 | 
			
		||||
2006-12-02  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	* Makefile.am:
 | 
			
		||||
	* configure.in:
 | 
			
		||||
	* doc/Makefile.am:
 | 
			
		||||
	* doc/reference/Makefile.am:
 | 
			
		||||
	* doc/reference/libgtop-docs.xml:
 | 
			
		||||
	* doc/reference/libgtop-sections.txt:
 | 
			
		||||
	* doc/reference/version.xml.in:
 | 
			
		||||
	* gtk-doc.make:
 | 
			
		||||
	* sysdeps/common/default.c:
 | 
			
		||||
 | 
			
		||||
	Converted to gtk-doc.
 | 
			
		||||
	Patch by Germán Poó-Caamaño <gpoo@ubiobio.cl>.
 | 
			
		||||
 | 
			
		||||
2006-12-01  Julio M. Merino Vidal  <jmmv@NetBSD.org>
 | 
			
		||||
 | 
			
		||||
	* configure.in:
 | 
			
		||||
	* libgtop-sysdeps.m4:
 | 
			
		||||
 | 
			
		||||
	Use the AS_HELP_STRING macro to format help messages.
 | 
			
		||||
	Fixes bug #337068.
 | 
			
		||||
 | 
			
		||||
2006-11-27  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	* libgtop-sysdeps.m4:
 | 
			
		||||
	
 | 
			
		||||
	Added kfreebsd support.
 | 
			
		||||
	Patch by Petr Salinger <Petr.Salinger@seznam.cz>.
 | 
			
		||||
 | 
			
		||||
2006-11-27  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	* configure.in:
 | 
			
		||||
	
 | 
			
		||||
	Bumped version number.
 | 
			
		||||
 | 
			
		||||
2006-09-16  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	* NEWS:
 | 
			
		||||
	* configure.in:
 | 
			
		||||
	
 | 
			
		||||
	Released 2.14.4.
 | 
			
		||||
 | 
			
		||||
2006-09-10  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	* configure.in:
 | 
			
		||||
	* include/glibtop/procstate.h:
 | 
			
		||||
	
 | 
			
		||||
	Removed wrong inline documentation.
 | 
			
		||||
	Closes #355286.
 | 
			
		||||
 | 
			
		||||
2006-09-05  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	* NEWS:
 | 
			
		||||
	
 | 
			
		||||
	Released 2.14.3.
 | 
			
		||||
 | 
			
		||||
2006-08-14  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	* src/inodedb/Makefile.am:
 | 
			
		||||
 | 
			
		||||
	Fixed inodedb build with --as-needed to please people
 | 
			
		||||
	who want to compile and optimize broken, deprecated and
 | 
			
		||||
	never-used feature.
 | 
			
		||||
	Patch by Daniel Gryniewicz <dang@gentoo.org>
 | 
			
		||||
	Closes #341041.
 | 
			
		||||
 | 
			
		||||
2006-08-10  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	* configure.in:
 | 
			
		||||
	
 | 
			
		||||
	Bumped version number.
 | 
			
		||||
	
 | 
			
		||||
	* glibtop.h:
 | 
			
		||||
	* include/glibtop/init_hooks.h:
 | 
			
		||||
 | 
			
		||||
	Added missing G_(BEGIN|END)_DECLS.
 | 
			
		||||
 | 
			
		||||
2006-07-27  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	* NEWS:
 | 
			
		||||
 
 | 
			
		||||
@@ -1,3 +1,4 @@
 | 
			
		||||
Email: martin@home-of-linux.org
 | 
			
		||||
Email: dave@srce.hr
 | 
			
		||||
Current maintainer : Benoît Dejean (benoit@placenet.org)
 | 
			
		||||
Benoît Dejean
 | 
			
		||||
E-mail: benoit@placenet.org
 | 
			
		||||
Userid: bdejean
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										12
									
								
								Makefile.am
									
									
									
									
									
								
							
							
						
						
									
										12
									
								
								Makefile.am
									
									
									
									
									
								
							@@ -1,3 +1,4 @@
 | 
			
		||||
ACLOCAL_AMFLAGS = -I m4
 | 
			
		||||
 | 
			
		||||
if EXAMPLES
 | 
			
		||||
EXAMPLES_DIR = examples
 | 
			
		||||
@@ -14,14 +15,8 @@ EXTRA_DIST = autogen.sh libgtop.spec.in copyright.txt \
 | 
			
		||||
	 features.def libgtopconfig.h.in \
 | 
			
		||||
	libgtop-sysdeps.m4 README \
 | 
			
		||||
	 libgtop-2.0.pc.in acinclude.m4 \
 | 
			
		||||
	intltool-extract.in \
 | 
			
		||||
	intltool-merge.in \
 | 
			
		||||
	intltool-update.in
 | 
			
		||||
 | 
			
		||||
DISTCLEANFILES = \
 | 
			
		||||
	intltool-extract \
 | 
			
		||||
	intltool-merge \
 | 
			
		||||
	intltool-update
 | 
			
		||||
	libgtop.doap \
 | 
			
		||||
	m4/introspection.m4
 | 
			
		||||
 | 
			
		||||
dist-hook:
 | 
			
		||||
	cp libgtop.spec $(distdir)
 | 
			
		||||
@@ -32,3 +27,4 @@ pkgconfig_DATA = libgtop-2.0.pc
 | 
			
		||||
libgtop-features.def: features.def
 | 
			
		||||
	@LN_S@ $< $@
 | 
			
		||||
 | 
			
		||||
DISTCHECK_CONFIGURE_FLAGS=--enable-gtk-doc --enable-introspection
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										349
									
								
								NEWS
									
									
									
									
									
								
							
							
						
						
									
										349
									
								
								NEWS
									
									
									
									
									
								
							@@ -1,3 +1,352 @@
 | 
			
		||||
20 March 2017: Overview of changes in 2.36.0
 | 
			
		||||
================================================
 | 
			
		||||
 | 
			
		||||
* Version bumped
 | 
			
		||||
 | 
			
		||||
13 March 2017: Overview of changes in 2.35.92
 | 
			
		||||
================================================
 | 
			
		||||
 | 
			
		||||
* Better output format for arrays
 | 
			
		||||
 | 
			
		||||
13 February 2017: Overview of changes in 2.35.90
 | 
			
		||||
================================================
 | 
			
		||||
 | 
			
		||||
* Linux:
 | 
			
		||||
  - Use dynamically allocated cpu buffer
 | 
			
		||||
  - Do not cache getpagesize()
 | 
			
		||||
  - Use faster g_ascii_isspace in tokenization
 | 
			
		||||
  - Ignore paragraphs not describing a CPU/core
 | 
			
		||||
 | 
			
		||||
* Updated translations
 | 
			
		||||
* Added more gettext options
 | 
			
		||||
 | 
			
		||||
16 January 2017: Overview of changes in 2.34.2
 | 
			
		||||
================================================
 | 
			
		||||
 | 
			
		||||
* Linux:
 | 
			
		||||
  - fill last_processor member
 | 
			
		||||
 | 
			
		||||
* Updated translations
 | 
			
		||||
* Added more gettext options
 | 
			
		||||
 | 
			
		||||
20 August 2016: Overview of changes in 2.34.1
 | 
			
		||||
================================================
 | 
			
		||||
 | 
			
		||||
* FreeBSD:
 | 
			
		||||
  - rewrite netload to use official APIs
 | 
			
		||||
  - mark wireless interfaces as such
 | 
			
		||||
 | 
			
		||||
* All
 | 
			
		||||
  - rename --with-libgtop-examples to --with-examples
 | 
			
		||||
  - use gettext instead of intltool/glib-gettext
 | 
			
		||||
  - added Language headers to the translations
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Special thanks to Gleb Smirnoff, Antoine Brodin, Koop Mast and Ting-Wei Lan for
 | 
			
		||||
the FreeBSD fixes, to Javier Jardón for the gettext migration and to Piotr Drąg
 | 
			
		||||
for adding the Language headers.
 | 
			
		||||
 | 
			
		||||
22 March 2016: Overview of changes in 2.34.0
 | 
			
		||||
================================================
 | 
			
		||||
 | 
			
		||||
* Stable release
 | 
			
		||||
 | 
			
		||||
29 February 2016: Overview of changes in 2.33.91
 | 
			
		||||
 | 
			
		||||
* Updated translations
 | 
			
		||||
* Fix building on must-libc
 | 
			
		||||
 | 
			
		||||
18 January 2016: Overview of changes in 2.33.4
 | 
			
		||||
 | 
			
		||||
* On OpenBSD only PID 1 is special
 | 
			
		||||
* Call setlocale in main
 | 
			
		||||
 | 
			
		||||
14 December: Overview of changes in 2.33.3
 | 
			
		||||
 | 
			
		||||
* Fixed borken compilation on OpenBSD 
 | 
			
		||||
* Updated translations.
 | 
			
		||||
 | 
			
		||||
21 September 2015: Overview of changes in 2.32.0
 | 
			
		||||
 | 
			
		||||
* Stable release
 | 
			
		||||
 | 
			
		||||
14 September 2015: Overview of changes in 2.31.91
 | 
			
		||||
================================================
 | 
			
		||||
* Darwin:
 | 
			
		||||
  - Fixed build.
 | 
			
		||||
 | 
			
		||||
* All
 | 
			
		||||
  - GI docs fixes
 | 
			
		||||
  - include fixes
 | 
			
		||||
  - Updated translations
 | 
			
		||||
 | 
			
		||||
16 August 2015: Overview of changes in 2.31.90
 | 
			
		||||
=============================================
 | 
			
		||||
* ABI changes:
 | 
			
		||||
  - ABI was inconsistent on platforms like FreeBSD which make use of
 | 
			
		||||
    glibtop_machine. The ABI was actually different between the
 | 
			
		||||
    library and the server. Fixed this by simply always defining
 | 
			
		||||
    glibtop_machine in glibtop struct.
 | 
			
		||||
  - Add Pss and Swap members in glibtop_proc_mem.
 | 
			
		||||
  - This is the second ABI breakage in since 2.28 (the first one was
 | 
			
		||||
    bumping NCPU), there were no release for 2.30.
 | 
			
		||||
 | 
			
		||||
* FreeBSD:
 | 
			
		||||
  - proclist: exclude the "idle" kernel process when GLIBTOP_EXCLUDE_IDLE.
 | 
			
		||||
  - Remove extraneous glibtop_init() calls.
 | 
			
		||||
 | 
			
		||||
* Linux:
 | 
			
		||||
  - proc_mem: implement Pss and Swap.
 | 
			
		||||
  - Remove extraneous glibtop_init() calls.
 | 
			
		||||
 | 
			
		||||
* All:
 | 
			
		||||
  - Propagate the change that machine in struct glibtop is now a
 | 
			
		||||
    pointer. Hope that change doesn't break build on other platforms,
 | 
			
		||||
    I can only test Linux and FreeBSD.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
5 August 2015: Overview of changes in 2.31.4
 | 
			
		||||
=============================================
 | 
			
		||||
* 71 commits !
 | 
			
		||||
* Implement a proper --enable-debug mode.
 | 
			
		||||
* FreeBSD:
 | 
			
		||||
	- procstate: set process name for kernel (pid=0)
 | 
			
		||||
	- procmap: get dev/inode for ZFS (no filename yet)
 | 
			
		||||
	- mem: rework memory usage to something more meaningful
 | 
			
		||||
	- proclist: don't report threads
 | 
			
		||||
	- proctime: fix CPU times
 | 
			
		||||
* Linux:
 | 
			
		||||
	- mem: use MemAvailable when available
 | 
			
		||||
	- mem: match `free`, report Slab as Cached.
 | 
			
		||||
	- support for x.y versionsmemory to match `free`
 | 
			
		||||
* Fix a lot of GI tags: it now works without crashing.
 | 
			
		||||
* Server and daemon binaries are now dynamically linked against their libgtop.
 | 
			
		||||
* Update a lot of examples/.
 | 
			
		||||
* Clean up some very old code.
 | 
			
		||||
* Updated translations.
 | 
			
		||||
 | 
			
		||||
Special thanks to Ting-Wei Lan for providing patches and feedback on FreeBSD.
 | 
			
		||||
 | 
			
		||||
22 June 2015: Overview of changes in 2.31.3
 | 
			
		||||
=============================================
 | 
			
		||||
* Numerous OpenBSD backend fixes.
 | 
			
		||||
* Fixed FreeBSD build issues.
 | 
			
		||||
* Implemented procaffinity support for NetBSD.
 | 
			
		||||
* Updated translations
 | 
			
		||||
 | 
			
		||||
19 August 2013: Overview of changes in 2.28.5
 | 
			
		||||
=============================================
 | 
			
		||||
* Fix numerous bugs in the OpenBSD backend.
 | 
			
		||||
* Updated translations.
 | 
			
		||||
 | 
			
		||||
30 August 2011: Overview of changes in 2.28.4
 | 
			
		||||
=============================================
 | 
			
		||||
* Fix numerous bugs in the FreeBSD backend.
 | 
			
		||||
* Split off OpenBSD code in its own backend, and fixes.
 | 
			
		||||
* Updated translations.
 | 
			
		||||
 | 
			
		||||
25 March 2011: Overview of changes in 2.28.3
 | 
			
		||||
================================================
 | 
			
		||||
* Fix build issue for strict linkers.
 | 
			
		||||
* Add Introspection support
 | 
			
		||||
* Cygwin fixes.
 | 
			
		||||
* FreeBSD: Fix get_mem() on 64-bit systems.
 | 
			
		||||
* Updated translations.
 | 
			
		||||
 | 
			
		||||
28 September 2010: Overview of changes in 2.28.2
 | 
			
		||||
================================================
 | 
			
		||||
* Updated translations.
 | 
			
		||||
 | 
			
		||||
30 March 2010: Overview of changes in 2.28.1
 | 
			
		||||
============================================
 | 
			
		||||
* Updated translations.
 | 
			
		||||
 | 
			
		||||
21 September 2009: Overview of changes in 2.28.0
 | 
			
		||||
================================================
 | 
			
		||||
* Updated translations.
 | 
			
		||||
 | 
			
		||||
25 May 2009: Overview of changes in 2.27.3
 | 
			
		||||
==========================================
 | 
			
		||||
* linux:
 | 
			
		||||
  - fixed format error.
 | 
			
		||||
 | 
			
		||||
3 May 2009: Overview of changes in 2.27.2
 | 
			
		||||
=========================================
 | 
			
		||||
* linux:
 | 
			
		||||
  - glibtop_get_proc_map: oops, fixed segfault.
 | 
			
		||||
 | 
			
		||||
3 May 2009: Overview of changes in 2.27.1
 | 
			
		||||
=========================================
 | 
			
		||||
* linux:
 | 
			
		||||
  - glibtop_get_proc_map is ~40% faster. This should be noticeable
 | 
			
		||||
    in system-monitor.
 | 
			
		||||
* New cygwin support.
 | 
			
		||||
 | 
			
		||||
13 April 2009: Overview of changes in 2.26.1
 | 
			
		||||
============================================
 | 
			
		||||
* linux:
 | 
			
		||||
  - glibtop_get_mounlist(...): also hide "none" fs.
 | 
			
		||||
 | 
			
		||||
1 Mars 2009: Overview of changes in 2.26.0
 | 
			
		||||
==========================================
 | 
			
		||||
* Nothing.
 | 
			
		||||
 | 
			
		||||
17 February 2009: Overview of changes in 2.25.91
 | 
			
		||||
================================================
 | 
			
		||||
* Synced with gnome-2-24.
 | 
			
		||||
 | 
			
		||||
19 January 2009: Overview of changes in 2.24.4
 | 
			
		||||
==============================================
 | 
			
		||||
* Fixed license: libgtop is GPL-2.
 | 
			
		||||
 | 
			
		||||
12 January 2009: Overview of changes in 2.24.3
 | 
			
		||||
==============================================
 | 
			
		||||
* linux:
 | 
			
		||||
  - fixed potential memory leak. Vincent Untz.
 | 
			
		||||
  - fixed read(2) usage. Should fix the missing cpus bug in system-monitor.
 | 
			
		||||
* darwin:
 | 
			
		||||
  - fixed build. "paul".
 | 
			
		||||
 | 
			
		||||
22 Septembre 2008: Overview of changes in 2.24.0
 | 
			
		||||
================================================
 | 
			
		||||
* Translation updates.
 | 
			
		||||
 | 
			
		||||
18 August 2008: Overview of changes in 2.23.90
 | 
			
		||||
==============================================
 | 
			
		||||
* freebsd:
 | 
			
		||||
  - updated port by Joe Marcus Clarke.
 | 
			
		||||
 | 
			
		||||
23 June 2008: Overview of changes in 2.23.4
 | 
			
		||||
===========================================
 | 
			
		||||
* linux:
 | 
			
		||||
  - Fixed and improved glibtop_get_fsusage with kernel >= 2.6.25.
 | 
			
		||||
    Closes #539360.
 | 
			
		||||
 | 
			
		||||
24 May 2008: Overview of changes in 2.23.2
 | 
			
		||||
==========================================
 | 
			
		||||
* glibtop_get_proc_open_files API can also lists IPv6 TCP sockets.
 | 
			
		||||
* glibtop_get_proc_affinity : new API to retrieve process CPU affinity.
 | 
			
		||||
 | 
			
		||||
(Let's hope one day i'll find the gtk-doc documentation ...)
 | 
			
		||||
 | 
			
		||||
* linux:
 | 
			
		||||
  - fixed parsing of big /proc/stat for uptime.
 | 
			
		||||
 | 
			
		||||
04 April 2008: Overview of changes in 2.22.1
 | 
			
		||||
============================================
 | 
			
		||||
* Fixed compilation/dist for !linux.
 | 
			
		||||
  Closes #525953.
 | 
			
		||||
 | 
			
		||||
10 Mars 2008: Overview of changes in 2.22.0
 | 
			
		||||
===========================================
 | 
			
		||||
* linux:
 | 
			
		||||
  - fixed proc_kernel.
 | 
			
		||||
 
 | 
			
		||||
25 February 2008: Overview of changes in 2.21.92
 | 
			
		||||
================================================
 | 
			
		||||
* linux:
 | 
			
		||||
  - fixed smaps parsing on >= 2.6.24.x.
 | 
			
		||||
 | 
			
		||||
14 January 2008: Overview of changes in 2.21.5
 | 
			
		||||
==============================================
 | 
			
		||||
* freebsd:
 | 
			
		||||
  - fixed build on GNU/kfreebsd. Petr Salinger.
 | 
			
		||||
  - fixed procmem units. Kuang-che Wu.
 | 
			
		||||
 | 
			
		||||
28 October 2007: Overview of changes in 2.21.1
 | 
			
		||||
==============================================
 | 
			
		||||
* don't export _p/_s private symbols anymore. This is not an API/ABI breakage.
 | 
			
		||||
* darwin implementation by Benjamin Reed.
 | 
			
		||||
* linux:
 | 
			
		||||
  - splitted fsusage and mountlist implementations;
 | 
			
		||||
  - smarter mountlist(allfs = False);
 | 
			
		||||
  - fixed some compile warning on 64bit;
 | 
			
		||||
* solaris:
 | 
			
		||||
  - fixed netload build by Henry Zhang.
 | 
			
		||||
 | 
			
		||||
16 September 2007: Overview of changes in 2.20.0
 | 
			
		||||
================================================
 | 
			
		||||
* Updated translations.
 | 
			
		||||
 | 
			
		||||
27 August 2007: Overview of changes in 2.19.92
 | 
			
		||||
==============================================
 | 
			
		||||
* Fixed stupid hardwired path in linux/sysinfo.c
 | 
			
		||||
 | 
			
		||||
26 August 2007: Overview of changes in 2.19.91
 | 
			
		||||
==============================================
 | 
			
		||||
* Translations updates.
 | 
			
		||||
* linux:
 | 
			
		||||
  - Small internal improvement. Might fix sysinfo when having more than
 | 
			
		||||
  8 CPUS.
 | 
			
		||||
 | 
			
		||||
9 July 2007: Overview of changes in 2.19.5
 | 
			
		||||
==========================================
 | 
			
		||||
* linux:
 | 
			
		||||
  - fixed proc_map for >= 2.6.22
 | 
			
		||||
* freebsd:
 | 
			
		||||
  - implemented procwd and procopenfiles
 | 
			
		||||
    Joe Marcus Clarke
 | 
			
		||||
 | 
			
		||||
18 June 2007: Overview of changes in 2.19.4
 | 
			
		||||
===========================================
 | 
			
		||||
* solaris:
 | 
			
		||||
  - fixed build. Damien Carbery.
 | 
			
		||||
 | 
			
		||||
3 June 2007: Overview of changes in 2.19.3
 | 
			
		||||
==========================================
 | 
			
		||||
* Small API change. get_proclist returns pid_t instead of unsigned
 | 
			
		||||
  for consistency.
 | 
			
		||||
* linux:
 | 
			
		||||
  - fixed an typo bug in open_files.
 | 
			
		||||
  - got rid of useless glibtop_init_s calls.
 | 
			
		||||
* Enable example build by defaut.
 | 
			
		||||
* Dropped G_GNUC_INTERNAL attributes no longer needed.
 | 
			
		||||
  This will please people trying to implement G_GNUC macro with a non
 | 
			
		||||
  GNU Compiler.
 | 
			
		||||
 | 
			
		||||
13 May 2007: Overview of changes in 2.19.2
 | 
			
		||||
==========================================
 | 
			
		||||
* This is the first release of the 2.19.x series.
 | 
			
		||||
* Got rid of inodedb (you don't even know what it is ;)
 | 
			
		||||
* New unstable API glibtop_get_proc_wd to get working directories of
 | 
			
		||||
  a process.
 | 
			
		||||
* Fixed OpenBSD build. Jasper Lievisse Adriaanse.
 | 
			
		||||
 | 
			
		||||
25 February 2007: Overview of changes in 2.14.8
 | 
			
		||||
===============================================
 | 
			
		||||
* bsd implementations have been splitted by Joe Marcus Clarke
 | 
			
		||||
  and Alexander Nedotsukov. (k)freeBSD now has a separate implementation.
 | 
			
		||||
 | 
			
		||||
February 10, 2007: Overview of changes in 2.14.7
 | 
			
		||||
================================================
 | 
			
		||||
* bsd:
 | 
			
		||||
  - massive kfreeBSD and FreeBSD updates by Roy Marples and Petr Salinger.
 | 
			
		||||
* mountlist can now ignore objfs and ctfs filesystems.
 | 
			
		||||
* fsusage won't return bavail > bfree anymore.
 | 
			
		||||
 | 
			
		||||
January 14, 2007: Overview of changes in 2.14.6
 | 
			
		||||
===============================================
 | 
			
		||||
* linux:
 | 
			
		||||
  - fixed stack overflow in glibtop_get_proc_map
 | 
			
		||||
  - fixed handling of long filenames in glibtop_get_proc_map and glibtop_get_proc_open_files.
 | 
			
		||||
  - micro-optimization
 | 
			
		||||
 | 
			
		||||
December 3, 2006: Overview of changes in 2.14.5
 | 
			
		||||
===============================================
 | 
			
		||||
* Added kfreebsd support (Petr Salinger <Petr.Salinger@seznam.cz>).
 | 
			
		||||
* Added solaris glibtop_get_proc_open_files (Henry Zhang <hua.zhang@sun.com>).
 | 
			
		||||
* Migrated to gtk-doc (Germán Poó-Caamaño <gpoo@ubiobio.cl>).
 | 
			
		||||
* glibtop_get_mountlist can now ignore nsfd FS. 
 | 
			
		||||
 | 
			
		||||
September 16, 2006: Overview of changes in 2.14.4
 | 
			
		||||
=================================================
 | 
			
		||||
* Fixed linux maps/smaps parsing on 64bit kernel.
 | 
			
		||||
 | 
			
		||||
September 5, 2006: Overview of changes in 2.14.3
 | 
			
		||||
================================================
 | 
			
		||||
* Fixed build with --as-needed.
 | 
			
		||||
* Added missing G_BEGIN_DECLS/G_END_DECLS.
 | 
			
		||||
 | 
			
		||||
July 27, 2006: Overview of changes in 2.14.2
 | 
			
		||||
============================================
 | 
			
		||||
* Updated solaris support (hua.zhang@sun.com)
 | 
			
		||||
 
 | 
			
		||||
@@ -6,7 +6,7 @@ test -z "$srcdir" && srcdir=.
 | 
			
		||||
 | 
			
		||||
PKG_NAME="Gnome Top Library"
 | 
			
		||||
 | 
			
		||||
(test -f $srcdir/configure.in \
 | 
			
		||||
(test -f $srcdir/configure.ac \
 | 
			
		||||
  && test -f $srcdir/copyright.txt \
 | 
			
		||||
  && test -d $srcdir/sysdeps) || {
 | 
			
		||||
    echo -n "**Error**: Directory "\`$srcdir\'" does not look like the"
 | 
			
		||||
 
 | 
			
		||||
@@ -3,12 +3,12 @@ dnl Configure script for the Gnome library
 | 
			
		||||
dnl
 | 
			
		||||
 | 
			
		||||
m4_define([libgtop_major_version], [2])
 | 
			
		||||
m4_define([libgtop_minor_version], [14])
 | 
			
		||||
m4_define([libgtop_micro_version], [2])
 | 
			
		||||
m4_define([libgtop_minor_version], [36])
 | 
			
		||||
m4_define([libgtop_micro_version], [0])
 | 
			
		||||
m4_define([libgtop_version], [libgtop_major_version.libgtop_minor_version.libgtop_micro_version])
 | 
			
		||||
 | 
			
		||||
dnl  increment if the interface has additions, changes, removals.
 | 
			
		||||
m4_define([libgtop_current], [7])
 | 
			
		||||
m4_define([libgtop_current], [10])
 | 
			
		||||
 | 
			
		||||
dnl  increment any time the source changes; set to
 | 
			
		||||
dnl  0 if you increment CURRENT
 | 
			
		||||
@@ -25,14 +25,19 @@ m4_define([libgtop_server_version], [5])
 | 
			
		||||
# Version code calculation
 | 
			
		||||
m4_define([libgtop_version_code], [m4_eval(libgtop_major_version * 1000000 + libgtop_minor_version * 1000 + libgtop_micro_version)])
 | 
			
		||||
 | 
			
		||||
AC_PREREQ(2.62)
 | 
			
		||||
AC_INIT([libgtop], [libgtop_version],
 | 
			
		||||
        [http://bugzilla.gnome.org/enter_bug.cgi?product=libgtop])
 | 
			
		||||
AC_CONFIG_SRCDIR(copyright.txt)
 | 
			
		||||
AC_CONFIG_HEADERS(config.h)
 | 
			
		||||
 | 
			
		||||
AC_CANONICAL_SYSTEM
 | 
			
		||||
AC_CANONICAL_HOST
 | 
			
		||||
 | 
			
		||||
AM_INIT_AUTOMAKE([-Wno-portability tar-ustar no-dist-gzip dist-xz])
 | 
			
		||||
AM_SILENT_RULES([yes])
 | 
			
		||||
AC_CONFIG_MACRO_DIR([m4])
 | 
			
		||||
GOBJECT_INTROSPECTION_CHECK([0.6.7])
 | 
			
		||||
 | 
			
		||||
AM_INIT_AUTOMAKE
 | 
			
		||||
AC_SUBST(ACLOCAL_AMFLAGS, [\${ACLOCAL_FLAGS}])
 | 
			
		||||
 | 
			
		||||
AC_SUBST(LIBGTOP_MAJOR_VERSION, [libgtop_major_version])
 | 
			
		||||
@@ -86,37 +91,13 @@ AM_CONDITIONAL(CROSS_COMPILING, test "x$cross_compiling" = xyes)
 | 
			
		||||
GNOME_LIBGTOP_SYSDEPS
 | 
			
		||||
GNOME_LIBGTOP_TYPES
 | 
			
		||||
 | 
			
		||||
AC_ARG_WITH(libgtop-inodedb,
 | 
			
		||||
[  --with-libgtop-inodedb  Build the inodedb stuff (default=no)],
 | 
			
		||||
[build_inodedb="$withval"], [build_inodedb=no])
 | 
			
		||||
 | 
			
		||||
LIBGTOP_EXTRA_LIBS=
 | 
			
		||||
 | 
			
		||||
if test x$build_inodedb = xyes ; then
 | 
			
		||||
  AC_CHECK_LIB(gdbm, gdbm_open, LIBGTOP_EXTRA_LIBS='-lgdbm', build_inodedb=no)
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
AM_CONDITIONAL(INODEDB, test x$build_inodedb = xyes)
 | 
			
		||||
 | 
			
		||||
if test x$build_inodedb = xyes ; then
 | 
			
		||||
  AC_DEFINE(GLIBTOP_INODEDB, 1,
 | 
			
		||||
            [Define if the libgtop inodedb should be built])
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
GLIB_REQUIRED=2.6.0
 | 
			
		||||
GOBJECT_REQUIRED=2.26.0
 | 
			
		||||
 | 
			
		||||
PKG_CHECK_MODULES(GLIB, glib-2.0 >= $GLIB_REQUIRED)
 | 
			
		||||
PKG_CHECK_MODULES(GLIB, glib-2.0 >= $GLIB_REQUIRED gobject-2.0 >= $GOBJECT_REQUIRED)
 | 
			
		||||
AC_SUBST(GLIB_CFLAGS)
 | 
			
		||||
AC_SUBST(GLIB_LIBS)
 | 
			
		||||
 | 
			
		||||
AC_CHECK_HEADER(popt.h,[POPT=yes],[POPT=no])
 | 
			
		||||
AC_MSG_CHECKING(for popt.h)
 | 
			
		||||
if test x$POPT = xyes ; then
 | 
			
		||||
   AC_MSG_RESULT(yes)
 | 
			
		||||
else
 | 
			
		||||
   AC_MSG_ERROR([libgtop requires the popt development libraries])
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
AC_CHECK_HEADER(ifaddrs.h, [HAVE_IFADDRS_H=yes], [HAVE_IFADDRS_H=no])
 | 
			
		||||
if test x$HAVE_IFADDRS_H = xyes ; then
 | 
			
		||||
	AC_DEFINE(HAVE_IFADDRS_H, 1, [defined if you have ifaddrs.h])
 | 
			
		||||
@@ -234,16 +215,14 @@ AC_TYPE_SIGNAL
 | 
			
		||||
AC_FUNC_STRFTIME
 | 
			
		||||
AC_CHECK_FUNCS(getcwd gettimeofday getwd putenv strdup strtoul uname)
 | 
			
		||||
 | 
			
		||||
IT_PROG_INTLTOOL([0.35.0])
 | 
			
		||||
AM_GNU_GETTEXT_VERSION([0.19.4])
 | 
			
		||||
AM_GNU_GETTEXT([external])
 | 
			
		||||
 | 
			
		||||
GETTEXT_PACKAGE=libgtop-2.0
 | 
			
		||||
AC_SUBST(GETTEXT_PACKAGE)
 | 
			
		||||
AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE",
 | 
			
		||||
                   [Define to the gettext package used by the library])
 | 
			
		||||
 | 
			
		||||
AM_GLIB_GNU_GETTEXT
 | 
			
		||||
GLIB_DEFINE_LOCALEDIR([GTOPLOCALEDIR])
 | 
			
		||||
 | 
			
		||||
AC_PATH_XTRA
 | 
			
		||||
 | 
			
		||||
dnl For Solaris
 | 
			
		||||
@@ -279,25 +258,21 @@ dnl For diskusage stuff
 | 
			
		||||
GNOME_FILEUTILS_CHECKS
 | 
			
		||||
 | 
			
		||||
dnl Debugging
 | 
			
		||||
AC_ARG_ENABLE(debug, [  --enable-debug          turn on debugging [default=no]],AC_DEFINE(LIBGTOP_ENABLE_DEBUG, 1, [Define to enable debugging]),)
 | 
			
		||||
AC_ARG_ENABLE(fatal-warnings, [  --enable-fatal-warnings make all warnings fatal [debug=no]],AC_DEFINE(LIBGTOP_FATAL_WARNINGS, 1, [Define to enable fatal warnings]),)
 | 
			
		||||
AC_ARG_ENABLE(debug,
 | 
			
		||||
              AS_HELP_STRING([--enable-debug],
 | 
			
		||||
                             [Turn on debugging @<:@default=no@:>@]),
 | 
			
		||||
              AC_DEFINE(LIBGTOP_ENABLE_DEBUG, 1, [Define to enable debugging]),
 | 
			
		||||
              AC_DEFINE(LIBGTOP_ENABLE_DEBUG, 0, [Define to disable debugging]))
 | 
			
		||||
AC_ARG_ENABLE(fatal-warnings,
 | 
			
		||||
              AS_HELP_STRING([--enable-fatal-warnings],
 | 
			
		||||
                             [Make all warnings fatal @<:@debug=no@:>@]),
 | 
			
		||||
              AC_DEFINE(LIBGTOP_FATAL_WARNINGS, 1,
 | 
			
		||||
                        [Define to enable fatal warnings]))
 | 
			
		||||
 | 
			
		||||
dnl These definitions are expanded in make.
 | 
			
		||||
LIBGTOP_LIBS='-L$(libdir)'
 | 
			
		||||
LIBGTOP_INCS='-I$(includedir)/libgtop-2.0'
 | 
			
		||||
 | 
			
		||||
if test x$libgtop_use_machine_h = xyes ; then
 | 
			
		||||
  LIBGTOP_INCS="$LIBGTOP_INCS -DHAVE_GLIBTOP_MACHINE_H"
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
if test x$build_inodedb = xyes ; then
 | 
			
		||||
  LIBGTOP_INCS="$LIBGTOP_INCS -DGLIBTOP_INODEDB"
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
if test x$libgtop_smp = xyes ; then
 | 
			
		||||
  LIBGTOP_INCS="$LIBGTOP_INCS -DHAVE_LIBGTOP_SMP"
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
if test x$libgtop_have_sysinfo = xyes ; then
 | 
			
		||||
  LIBGTOP_INCS="$LIBGTOP_INCS -DHAVE_LIBGTOP_SYSINFO"
 | 
			
		||||
fi
 | 
			
		||||
@@ -326,24 +301,17 @@ LIBGTOP_EXTRA_LIBS="$GLIB_LIBS $LIBGTOP_EXTRA_LIBS"
 | 
			
		||||
 | 
			
		||||
LIBGTOP_LIBS="$LIBGTOP_LIBS"
 | 
			
		||||
 | 
			
		||||
LIBGTOP_LIBS="$LIBGTOP_LIBS" 
 | 
			
		||||
 | 
			
		||||
machine_incs="-I\$(top_srcdir)/sysdeps/$sysdeps_dir"
 | 
			
		||||
 | 
			
		||||
AC_SUBST(machine_incs)
 | 
			
		||||
 | 
			
		||||
if test "$GCC" = "yes" ; then
 | 
			
		||||
        CFLAGS="\
 | 
			
		||||
	-Winline \
 | 
			
		||||
	-Wall \
 | 
			
		||||
	-std=gnu89 \
 | 
			
		||||
	-Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes \
 | 
			
		||||
	-Wnested-externs -Wpointer-arith \
 | 
			
		||||
	-Wcast-align -Wsign-compare \
 | 
			
		||||
	$CFLAGS"
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
INCLUDES="-I\$(top_builddir) -I\$(top_srcdir) -I\$(top_srcdir)/sysdeps/$sysdeps_dir -I\$(top_srcdir)/include $GLIB_CFLAGS $X_CFLAGS"
 | 
			
		||||
AM_CPPFLAGS="-I\$(top_builddir) -I\$(top_srcdir) -I\$(top_srcdir)/sysdeps/$sysdeps_dir -I\$(top_srcdir)/include $GLIB_CFLAGS $X_CFLAGS"
 | 
			
		||||
 | 
			
		||||
# Add various defines to the config.h file ...
 | 
			
		||||
AH_VERBATIM([_GNU_SOURCE],
 | 
			
		||||
@@ -362,7 +330,7 @@ AC_DEFINE([LIBGTOP_VERSION_CODE], [libgtop_version_code],
 | 
			
		||||
AC_DEFINE_UNQUOTED([LIBGTOP_SERVER], ["$LIBGTOP_SERVER"],
 | 
			
		||||
                   [The path to the libgtop server])
 | 
			
		||||
 | 
			
		||||
AC_SUBST(INCLUDES)
 | 
			
		||||
AC_SUBST(AM_CPPFLAGS)
 | 
			
		||||
 | 
			
		||||
AC_SUBST(LIBGTOP_EXTRA_LIBS)
 | 
			
		||||
AC_SUBST(GLIB_LIBS)
 | 
			
		||||
@@ -381,6 +349,8 @@ fi
 | 
			
		||||
AC_SUBST(sysdeps_suid_lib)
 | 
			
		||||
AC_SUBST(server_programs)
 | 
			
		||||
 | 
			
		||||
GTK_DOC_CHECK(1.4)
 | 
			
		||||
 | 
			
		||||
AC_CONFIG_FILES([
 | 
			
		||||
Makefile
 | 
			
		||||
libgtop.spec
 | 
			
		||||
@@ -398,12 +368,17 @@ sysdeps/linux/Makefile
 | 
			
		||||
sysdeps/freebsd/Makefile
 | 
			
		||||
sysdeps/solaris/Makefile
 | 
			
		||||
sysdeps/aix/Makefile
 | 
			
		||||
sysdeps/bsd/Makefile
 | 
			
		||||
sysdeps/darwin/Makefile
 | 
			
		||||
sysdeps/cygwin/Makefile
 | 
			
		||||
sysdeps/openbsd/Makefile
 | 
			
		||||
src/Makefile
 | 
			
		||||
src/daemon/Makefile
 | 
			
		||||
src/inodedb/Makefile
 | 
			
		||||
lib/Makefile
 | 
			
		||||
examples/Makefile
 | 
			
		||||
doc/Makefile
 | 
			
		||||
doc/reference/Makefile
 | 
			
		||||
doc/reference/version.xml
 | 
			
		||||
libgtop-2.0.pc
 | 
			
		||||
libgtopconfig.h
 | 
			
		||||
])
 | 
			
		||||
@@ -16,7 +16,7 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										9
									
								
								debian/.cvsignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										9
									
								
								debian/.cvsignore
									
									
									
									
										vendored
									
									
								
							@@ -1,9 +0,0 @@
 | 
			
		||||
control
 | 
			
		||||
rules
 | 
			
		||||
build
 | 
			
		||||
tmp
 | 
			
		||||
*.postinst
 | 
			
		||||
*.debhelper
 | 
			
		||||
*.files
 | 
			
		||||
files
 | 
			
		||||
substvars
 | 
			
		||||
							
								
								
									
										2
									
								
								debian/rules.in
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								debian/rules.in
									
									
									
									
										vendored
									
									
								
							@@ -10,7 +10,7 @@
 | 
			
		||||
i=$(shell pwd)/debian/tmp
 | 
			
		||||
b=$(shell pwd)/debian/build
 | 
			
		||||
 | 
			
		||||
configure: configure.in
 | 
			
		||||
configure: configure.ac
 | 
			
		||||
	@echo "--- Making configure script and configuring"
 | 
			
		||||
	chmod +x autogen.sh
 | 
			
		||||
	./autogen.sh --prefix=/@PREFIX@ --with-gnome=/@GNOMEPREFIX@ \
 | 
			
		||||
 
 | 
			
		||||
@@ -1,11 +0,0 @@
 | 
			
		||||
texinfo.tex
 | 
			
		||||
*.info
 | 
			
		||||
Makefile.in
 | 
			
		||||
Makefile
 | 
			
		||||
*.log *.toc *.dvi *.aux *.cp *.fn *.vr *.tp *.ky *.pg
 | 
			
		||||
*.ps
 | 
			
		||||
auto-macros.texi
 | 
			
		||||
version.texi
 | 
			
		||||
stamp-vti
 | 
			
		||||
*.html *.pdf
 | 
			
		||||
mdate-sh
 | 
			
		||||
@@ -1,3 +1,9 @@
 | 
			
		||||
2007-02-15  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	* reference/Makefile.am:
 | 
			
		||||
	
 | 
			
		||||
	Fixed distcheck.
 | 
			
		||||
 | 
			
		||||
2006-02-21  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	* reference.texi: Fixed glibtop_get_proc_state doc.
 | 
			
		||||
 
 | 
			
		||||
@@ -1,3 +1,5 @@
 | 
			
		||||
SUBDIRS = reference
 | 
			
		||||
 | 
			
		||||
info_TEXINFOS		= libgtop2.texi
 | 
			
		||||
 | 
			
		||||
libgtop2_TEXINFOS	= libgtop2.texi about.texi reference.texi \
 | 
			
		||||
 
 | 
			
		||||
@@ -743,7 +743,7 @@ The description above is taken from the manual page of the @file{/proc}
 | 
			
		||||
filesystem under Linux and is a little bit confusing, so I make this clear
 | 
			
		||||
here. 
 | 
			
		||||
 | 
			
		||||
@strong{Note for people porting LibGTop to other systems:}
 | 
			
		||||
@strong{A word for people porting LibGTop to other systems:}
 | 
			
		||||
Every operating system has its own idea about the memory usage of a process
 | 
			
		||||
and also system utilities like @code{ps} show different things on different
 | 
			
		||||
systems.
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										59
									
								
								doc/reference/Makefile.am
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										59
									
								
								doc/reference/Makefile.am
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,59 @@
 | 
			
		||||
AUTOMAKE_OPTIONS = 1.6
 | 
			
		||||
## Process this file with automake to produce Makefile.in
 | 
			
		||||
# The name of the module, e.g. 'glib'.
 | 
			
		||||
DOC_MODULE=libgtop
 | 
			
		||||
 | 
			
		||||
# The top-level SGML file. You can change this if you want to.
 | 
			
		||||
DOC_MAIN_SGML_FILE=$(DOC_MODULE)-docs.xml
 | 
			
		||||
 | 
			
		||||
# Extra options to pass to gtkdoc-scangobj. Not normally needed.
 | 
			
		||||
# SCANGOBJ_OPTIONS=
 | 
			
		||||
 | 
			
		||||
# Extra options to supply to gtkdoc-scan.
 | 
			
		||||
# e.g. SCAN_OPTIONS=--deprecated-guards="GTK_DISABLE_DEPRECATED" 
 | 
			
		||||
SCAN_OPTIONS=
 | 
			
		||||
 | 
			
		||||
# Extra options to supply to gtkdoc-mkdb.
 | 
			
		||||
# e.g. MKDB_OPTIONS=--sgml-mode --output-format=xml
 | 
			
		||||
MKDB_OPTIONS=--sgml-mode --output-format=xml --source-dir=$(top_srcdir)/sysdeps/common
 | 
			
		||||
 | 
			
		||||
# The directory containing the source code. Relative to $(srcdir).
 | 
			
		||||
# gtk-doc will search all .c & .h files beneath here for inline comments
 | 
			
		||||
# documenting the functions and macros.
 | 
			
		||||
# e.g. DOC_SOURCE_DIR=../../../gtk
 | 
			
		||||
DOC_SOURCE_DIR=$(top_srcdir)/include/glibtop
 | 
			
		||||
 | 
			
		||||
# Used for dependencies. The docs will be rebuilt if any of these change.
 | 
			
		||||
# e.g. HFILE_GLOB=$(top_srcdir)/gtk/*.h
 | 
			
		||||
# e.g. CFILE_GLOB=$(top_srcdir)/gtk/*.c
 | 
			
		||||
HFILE_GLOB=$(top_srcdir)/include/glibtop/*.h
 | 
			
		||||
CFILE_GLOB=$(top_srcdir)/sysdeps/common/*.c
 | 
			
		||||
 | 
			
		||||
# Header files to ignore when scanning.
 | 
			
		||||
# e.g. IGNORE_HFILES=gtkdebug.h gtkintl.h
 | 
			
		||||
IGNORE_HFILES=error.h global.h gnuserv.h init_hooks.h write.h read.h read_data.h config.h libgtopconfig.h
 | 
			
		||||
 | 
			
		||||
EXTRA_HFILES=$(top_srcdir)/glibtop.h
 | 
			
		||||
 | 
			
		||||
# Extra SGML files that are included by $(DOC_MAIN_SGML_FILE).
 | 
			
		||||
# e.g. content_files=running.sgml building.sgml changes-2.0.sgml
 | 
			
		||||
content_files=version.xml
 | 
			
		||||
 | 
			
		||||
# Images to copy into HTML directory.
 | 
			
		||||
# e.g. HTML_IMAGES=$(top_srcdir)/gtk/stock-icons/stock_about_24.png
 | 
			
		||||
HTML_IMAGES=
 | 
			
		||||
 | 
			
		||||
# CFLAGS and LDFLAGS for compiling gtkdoc-scangobj with your library.
 | 
			
		||||
# Only needed if you are using gtkdoc-scangobj to dynamically query widget
 | 
			
		||||
# signals and properties.
 | 
			
		||||
# e.g. AM_CPPFLAGS=-I$(top_srcdir) -I$(top_builddir) $(GTK_DEBUG_FLAGS)
 | 
			
		||||
# e.g. GTKDOC_LIBS=$(top_builddir)/gtk/$(gtktargetlib)
 | 
			
		||||
AM_CPPFLAGS=
 | 
			
		||||
GTKDOC_LIBS=
 | 
			
		||||
 | 
			
		||||
# This includes the standard gtk-doc make rules, copied by gtkdocize.
 | 
			
		||||
include $(top_srcdir)/gtk-doc.make
 | 
			
		||||
 | 
			
		||||
# Other files to distribute
 | 
			
		||||
# e.g. EXTRA_DIST += version.xml.in
 | 
			
		||||
EXTRA_DIST += version.xml.in
 | 
			
		||||
							
								
								
									
										206
									
								
								doc/reference/libgtop-docs.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										206
									
								
								doc/reference/libgtop-docs.xml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,206 @@
 | 
			
		||||
<?xml version="1.0"?>
 | 
			
		||||
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" 
 | 
			
		||||
               "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
 | 
			
		||||
<book id="index" xmlns:xi="http://www.w3.org/2003/XInclude">
 | 
			
		||||
  <bookinfo>
 | 
			
		||||
    <title>Libgtop Reference Manual</title>
 | 
			
		||||
    <releaseinfo>for libgtop <xi:include href="version.xml"/></releaseinfo>
 | 
			
		||||
    <authorgroup>
 | 
			
		||||
      <author>
 | 
			
		||||
	<firstname>Martin </firstname>
 | 
			
		||||
	<surname>Baulig</surname>
 | 
			
		||||
	<affiliation>
 | 
			
		||||
	  <address>
 | 
			
		||||
	    <email>martin@home-of-linux.org</email>
 | 
			
		||||
	  </address>
 | 
			
		||||
	</affiliation>
 | 
			
		||||
      </author>
 | 
			
		||||
      <author>
 | 
			
		||||
	<firstname>Germán</firstname>
 | 
			
		||||
	<surname>Poó-Caamaño</surname>
 | 
			
		||||
	<affiliation>
 | 
			
		||||
	  <address>
 | 
			
		||||
	    <email>gpoo@ubiobio.cl</email>
 | 
			
		||||
	  </address>
 | 
			
		||||
	</affiliation>
 | 
			
		||||
      </author>
 | 
			
		||||
    </authorgroup>
 | 
			
		||||
 | 
			
		||||
    <legalnotice>
 | 
			
		||||
      <para>Permission is granted to copy, distribute and/or modify
 | 
			
		||||
      this document under the terms of the <citetitle>GNU Free
 | 
			
		||||
      Documentation License</citetitle>, Version 1.1 or any later
 | 
			
		||||
      version published by the Free Software Foundation with no
 | 
			
		||||
      Invariant Sections, no Front-Cover Texts, and no Back-Cover
 | 
			
		||||
      Texts. You may obtain a copy of the <citetitle>GNU Free
 | 
			
		||||
      Documentation License</citetitle> from the Free Software
 | 
			
		||||
      Foundation by visiting <ulink type="http"
 | 
			
		||||
      url="http://www.fsf.org">their Web site</ulink> or by writing
 | 
			
		||||
      to: Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
      Boston, MA 02110-1301, USA.</para>
 | 
			
		||||
 | 
			
		||||
      <para>Many of the names used by companies to distinguish their
 | 
			
		||||
      products and services are claimed as trademarks. Where those
 | 
			
		||||
      names appear in any GNOME documentation, and those trademarks
 | 
			
		||||
      are made aware to the members of the GNOME Documentation
 | 
			
		||||
      Project, the names have been printed in caps or initial
 | 
			
		||||
      caps.</para>
 | 
			
		||||
    </legalnotice>
 | 
			
		||||
 | 
			
		||||
    <abstract>
 | 
			
		||||
      <para>
 | 
			
		||||
      LibGTop is a library to get system specific data such as CPU and 
 | 
			
		||||
      Memory Usage and information about running Processes.</para>
 | 
			
		||||
 | 
			
		||||
      <para>On Systems like Solaris or Digital Unix where you need special
 | 
			
		||||
      privileges to get those data, it uses a setuid/setgid server to do 
 | 
			
		||||
      so.</para>
 | 
			
		||||
 | 
			
		||||
      <para>Even if LibGTop is a part of the GNOME desktop environment
 | 
			
		||||
      (@uref{http://www.gnome.org}), the main interface of LibGTop is totally
 | 
			
		||||
      independent from any particular desktop environment, so you can also
 | 
			
		||||
      use it as a standalone library in any piece of GPLed software.</para>
 | 
			
		||||
 | 
			
		||||
      <para>This manual documents the interfaces of the libgtop
 | 
			
		||||
      library and has some short notes to help get you up to speed
 | 
			
		||||
      with using the library.</para>
 | 
			
		||||
    </abstract>
 | 
			
		||||
  </bookinfo>
 | 
			
		||||
 | 
			
		||||
  <!--FIXME: It is missing the rest of about.texi -->
 | 
			
		||||
 | 
			
		||||
  <chapter id="libgtop-white-paper">
 | 
			
		||||
    <title>White paper</title>
 | 
			
		||||
 | 
			
		||||
    <sect1 id="libgtop-white-paper-introduction">
 | 
			
		||||
      <title>Introduction</title>
 | 
			
		||||
      <para>Many modern UNIX systems like Solaris, BSD or Digitial Unix 
 | 
			
		||||
      only allow priviledged processes to read information like CPU and 
 | 
			
		||||
      Memory Usage or information about running processes.</para>
 | 
			
		||||
 | 
			
		||||
      <itemizedlist>
 | 
			
		||||
      <listitem><para>
 | 
			
		||||
      BSD, for instance, doesn't have any other way to get those data than reading
 | 
			
		||||
      directly from @file{/dev/kmem} and you need to be in the @code{kmem} group to
 | 
			
		||||
      be able to read this.</para></listitem>
 | 
			
		||||
 | 
			
		||||
      <listitem><para>
 | 
			
		||||
      Other systems, like Digital Unix, allow all users to get things like CPU and
 | 
			
		||||
      Memory statistics, but only root may read information about any process other
 | 
			
		||||
      than the current one (you may not even get information about your own processes
 | 
			
		||||
      if you're not root).</para></listitem>
 | 
			
		||||
 | 
			
		||||
      <listitem><para>
 | 
			
		||||
      Linux has a very nice @file{/proc} filesystem, but reading and parsing
 | 
			
		||||
      @file{/proc} is very slow and inefficient.</para></listitem>
 | 
			
		||||
 | 
			
		||||
      <listitem><para>
 | 
			
		||||
      Solaris is a bit better, but you still need to be in the @code{sys} group or
 | 
			
		||||
      even root to get some data.</para></listitem>
 | 
			
		||||
      </itemizedlist>
 | 
			
		||||
 | 
			
		||||
      <para>
 | 
			
		||||
      Because of this system utilities like @code{ps}, @code{uptime} or @code{top}
 | 
			
		||||
      often are setgid kmem or setuid root. Usually, they're also very specific to
 | 
			
		||||
      the system they're written for and not easily portable to other systems without
 | 
			
		||||
      a lot of work.</para>
 | 
			
		||||
 | 
			
		||||
      <para>
 | 
			
		||||
      This, of cause, becomes a problem for graphical tools like @code{gtop} - making
 | 
			
		||||
      a GTK+ program setgid or even setuid would be a security hole as big as you can
 | 
			
		||||
      drive the entire X11 source code through. For the GNOME project, we also needed
 | 
			
		||||
      some kind of library which provides all the required information in a portable
 | 
			
		||||
      since there's more than just one single program that wants to use them - for
 | 
			
		||||
      instance @code{gtop} and the @code{multiload}, @code{cpumemusage} and
 | 
			
		||||
      @code{netload} panel applets.</para>
 | 
			
		||||
 | 
			
		||||
    </sect1>
 | 
			
		||||
 | 
			
		||||
    <sect1 id="libgtop-white-paper-overview">
 | 
			
		||||
      <title>Overview</title>
 | 
			
		||||
      <para>This section should give you a short overview on how LibGTop
 | 
			
		||||
      was developed, which things needed to be considered and how it 
 | 
			
		||||
      works.</para>
 | 
			
		||||
 | 
			
		||||
      <sect2 id="libgtop-white-paper-overview-design">
 | 
			
		||||
      <title>Interface Design: Things that need to be considered</title>
 | 
			
		||||
      <para>
 | 
			
		||||
At the very beginning, it was necessary to collect all the data the library part
 | 
			
		||||
should provide and put them into some C structures. This was not that easiy as it
 | 
			
		||||
might sound since LibGTop should be portable to any modern UNIX system with a common
 | 
			
		||||
library part on all those systems, but the data that should be returned vary from
 | 
			
		||||
system to system. For instance some systems support shared memory, but some others
 | 
			
		||||
may not.</para>
 | 
			
		||||
 | 
			
		||||
      <para>
 | 
			
		||||
The header files where we define these C structures (which are system-independent) are
 | 
			
		||||
shared between client and server. This way we can call the system dependent code
 | 
			
		||||
directly where we do not need any special privileges to do so.</para>
 | 
			
		||||
 | 
			
		||||
      <para>
 | 
			
		||||
All of those structures contain a @code{flags} member which is interpreted as a bit
 | 
			
		||||
mask and tells the caller of the library functions which of the fields in the returned
 | 
			
		||||
structure are valid and which are not.</para>
 | 
			
		||||
      </sect2>
 | 
			
		||||
 | 
			
		||||
      <sect2 id="libgtop-white-paper-overview-server">
 | 
			
		||||
      <title>Server Implementation: The LibGTop "server"</title>
 | 
			
		||||
      <para>
 | 
			
		||||
The LibGTop @dfn{server} is a setgid/setuid binary which contains all the system
 | 
			
		||||
dependent code which needs special privileges. It is only build if it's required
 | 
			
		||||
on the current system (for instance, the Linux kernel provides all the required
 | 
			
		||||
data via its @file{/proc} filesystem so we do not need the server at all) and it
 | 
			
		||||
only contains the @dfn{features} which need privileges.</para>
 | 
			
		||||
 | 
			
		||||
      <para>
 | 
			
		||||
Whenever we do not need any privileges to get all the data for some of the requested
 | 
			
		||||
structures (here called @dfn{features}) the library calls the sysdeps code directly
 | 
			
		||||
rather than using the server.</para>
 | 
			
		||||
      </sect2>
 | 
			
		||||
    </sect1>
 | 
			
		||||
 | 
			
		||||
  </chapter>
 | 
			
		||||
 | 
			
		||||
  <chapter id="libgtop-lib">
 | 
			
		||||
    <title>Libgtop Library Reference</title>
 | 
			
		||||
 | 
			
		||||
    <para>This section contains the API reference for libgtop.  All
 | 
			
		||||
    the public interfaces are documented here.</para>
 | 
			
		||||
 | 
			
		||||
    <xi:include href="xml/glibtop.xml"/>
 | 
			
		||||
    <xi:include href="xml/close.xml"/>
 | 
			
		||||
    <xi:include href="xml/command.xml"/>
 | 
			
		||||
    <xi:include href="xml/glibtop-server.xml"/>
 | 
			
		||||
    <xi:include href="xml/netload.xml"/>
 | 
			
		||||
    <xi:include href="xml/ppp.xml"/>
 | 
			
		||||
    <xi:include href="xml/shm_limits.xml"/>
 | 
			
		||||
    <xi:include href="xml/uptime.xml"/>
 | 
			
		||||
    <xi:include href="xml/netlist.xml"/>
 | 
			
		||||
    <xi:include href="xml/open.xml"/>
 | 
			
		||||
    <xi:include href="xml/parameter.xml"/>
 | 
			
		||||
    <xi:include href="xml/procargs.xml"/>
 | 
			
		||||
    <xi:include href="xml/procmem.xml"/>
 | 
			
		||||
    <xi:include href="xml/procopenfiles.xml"/>
 | 
			
		||||
    <xi:include href="xml/procsegment.xml"/>
 | 
			
		||||
    <xi:include href="xml/procsignal.xml"/>
 | 
			
		||||
    <xi:include href="xml/sysdeps.xml"/>
 | 
			
		||||
    <xi:include href="xml/procstate.xml"/>
 | 
			
		||||
    <xi:include href="xml/procuid.xml"/>
 | 
			
		||||
    <xi:include href="xml/proctime.xml"/>
 | 
			
		||||
    <xi:include href="xml/signal.xml"/>
 | 
			
		||||
    <xi:include href="xml/procmap.xml"/>
 | 
			
		||||
    <xi:include href="xml/sysinfo.xml"/>
 | 
			
		||||
    <xi:include href="xml/union.xml"/>
 | 
			
		||||
    <xi:include href="xml/version.xml"/>
 | 
			
		||||
    <xi:include href="xml/proclist.xml"/>
 | 
			
		||||
    <xi:include href="xml/sem_limits.xml"/>
 | 
			
		||||
    <xi:include href="xml/prockernel.xml"/>
 | 
			
		||||
    <xi:include href="xml/fsusage.xml"/>
 | 
			
		||||
    <xi:include href="xml/loadavg.xml"/>
 | 
			
		||||
    <xi:include href="xml/mem.xml"/>
 | 
			
		||||
    <xi:include href="xml/mountlist.xml"/>
 | 
			
		||||
    <xi:include href="xml/msg_limits.xml"/>
 | 
			
		||||
    <xi:include href="xml/cpu.xml"/>
 | 
			
		||||
    <xi:include href="xml/swap.xml"/>
 | 
			
		||||
  </chapter>
 | 
			
		||||
</book>
 | 
			
		||||
							
								
								
									
										0
									
								
								doc/reference/libgtop-overrides.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										0
									
								
								doc/reference/libgtop-overrides.txt
									
									
									
									
									
										Normal file
									
								
							
							
								
								
									
										699
									
								
								doc/reference/libgtop-sections.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										699
									
								
								doc/reference/libgtop-sections.txt
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,699 @@
 | 
			
		||||
<INCLUDE>glibtop.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>glibtop</FILE>
 | 
			
		||||
<TITLE>GlibTop</TITLE>
 | 
			
		||||
GLIBTOP_MOUNTENTRY_LEN
 | 
			
		||||
LIBGTOP_CHECK_VERSION
 | 
			
		||||
glibtop
 | 
			
		||||
glibtop_global_server
 | 
			
		||||
glibtop_init
 | 
			
		||||
glibtop_init_r
 | 
			
		||||
glibtop_init_s
 | 
			
		||||
glibtop_server_features
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/close.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>close</FILE>
 | 
			
		||||
<TITLE>Close</TITLE>
 | 
			
		||||
glibtop_close
 | 
			
		||||
glibtop_close_r
 | 
			
		||||
glibtop_close_s
 | 
			
		||||
glibtop_close_p
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/command.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>command</FILE>
 | 
			
		||||
<TITLE>Command</TITLE>
 | 
			
		||||
GLIBTOP_CMND_QUIT
 | 
			
		||||
GLIBTOP_CMND_SYSDEPS
 | 
			
		||||
GLIBTOP_CMND_CPU
 | 
			
		||||
GLIBTOP_CMND_MEM
 | 
			
		||||
GLIBTOP_CMND_SWAP
 | 
			
		||||
GLIBTOP_CMND_UPTIME
 | 
			
		||||
GLIBTOP_CMND_LOADAVG
 | 
			
		||||
GLIBTOP_CMND_SHM_LIMITS
 | 
			
		||||
GLIBTOP_CMND_MSG_LIMITS
 | 
			
		||||
GLIBTOP_CMND_SEM_LIMITS
 | 
			
		||||
GLIBTOP_CMND_PROCLIST
 | 
			
		||||
GLIBTOP_CMND_PROC_STATE
 | 
			
		||||
GLIBTOP_CMND_PROC_UID
 | 
			
		||||
GLIBTOP_CMND_PROC_MEM
 | 
			
		||||
GLIBTOP_CMND_PROC_TIME
 | 
			
		||||
GLIBTOP_CMND_PROC_SIGNAL
 | 
			
		||||
GLIBTOP_CMND_PROC_KERNEL
 | 
			
		||||
GLIBTOP_CMND_PROC_SEGMENT
 | 
			
		||||
GLIBTOP_CMND_PROC_ARGS
 | 
			
		||||
GLIBTOP_CMND_PROC_MAP
 | 
			
		||||
GLIBTOP_CMND_MOUNTLIST
 | 
			
		||||
GLIBTOP_CMND_FSUSAGE
 | 
			
		||||
GLIBTOP_CMND_NETLOAD
 | 
			
		||||
GLIBTOP_CMND_PPP
 | 
			
		||||
GLIBTOP_CMND_NETLIST
 | 
			
		||||
GLIBTOP_CMND_PROC_OPEN_FILES
 | 
			
		||||
GLIBTOP_MAX_CMND
 | 
			
		||||
glibtop_command
 | 
			
		||||
glibtop_response
 | 
			
		||||
glibtop_response_union
 | 
			
		||||
glibtop_call
 | 
			
		||||
glibtop_call_l
 | 
			
		||||
glibtop_call_s
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/glibtop-server.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>glibtop-server</FILE>
 | 
			
		||||
<TITLE>GlibTop Server</TITLE>
 | 
			
		||||
glibtop_server
 | 
			
		||||
glibtop_server_info
 | 
			
		||||
glibtop_closure
 | 
			
		||||
glibtop_server_new
 | 
			
		||||
glibtop_server_ref
 | 
			
		||||
glibtop_server_unref
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/netload.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>netload</FILE>
 | 
			
		||||
<TITLE>Net Load</TITLE>
 | 
			
		||||
GLIBTOP_NETLOAD_IF_FLAGS
 | 
			
		||||
GLIBTOP_NETLOAD_MTU
 | 
			
		||||
GLIBTOP_NETLOAD_SUBNET
 | 
			
		||||
GLIBTOP_NETLOAD_ADDRESS
 | 
			
		||||
GLIBTOP_NETLOAD_PACKETS_IN
 | 
			
		||||
GLIBTOP_NETLOAD_PACKETS_OUT
 | 
			
		||||
GLIBTOP_NETLOAD_PACKETS_TOTAL
 | 
			
		||||
GLIBTOP_NETLOAD_BYTES_IN
 | 
			
		||||
GLIBTOP_NETLOAD_BYTES_OUT
 | 
			
		||||
GLIBTOP_NETLOAD_BYTES_TOTAL
 | 
			
		||||
GLIBTOP_NETLOAD_ERRORS_IN
 | 
			
		||||
GLIBTOP_NETLOAD_ERRORS_OUT
 | 
			
		||||
GLIBTOP_NETLOAD_ERRORS_TOTAL
 | 
			
		||||
GLIBTOP_NETLOAD_COLLISIONS
 | 
			
		||||
GLIBTOP_NETLOAD_ADDRESS6
 | 
			
		||||
GLIBTOP_NETLOAD_PREFIX6
 | 
			
		||||
GLIBTOP_NETLOAD_SCOPE6
 | 
			
		||||
GLIBTOP_NETLOAD_HWADDRESS
 | 
			
		||||
GLIBTOP_MAX_NETLOAD
 | 
			
		||||
glibtop_netload
 | 
			
		||||
glibtop_get_netload
 | 
			
		||||
glibtop_get_netload_r
 | 
			
		||||
glibtop_get_netload_l
 | 
			
		||||
glibtop_init_netload_p
 | 
			
		||||
glibtop_get_netload_p
 | 
			
		||||
glibtop_init_netload_s
 | 
			
		||||
glibtop_get_netload_s
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/ppp.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>ppp</FILE>
 | 
			
		||||
<TITLE>PPP</TITLE>
 | 
			
		||||
GLIBTOP_PPP_STATE
 | 
			
		||||
GLIBTOP_PPP_BYTES_IN
 | 
			
		||||
GLIBTOP_PPP_BYTES_OUT
 | 
			
		||||
GLIBTOP_MAX_PPP
 | 
			
		||||
glibtop_ppp
 | 
			
		||||
glibtop_get_ppp
 | 
			
		||||
glibtop_get_ppp_r
 | 
			
		||||
glibtop_get_ppp_l
 | 
			
		||||
glibtop_init_ppp_p
 | 
			
		||||
glibtop_get_ppp_p
 | 
			
		||||
glibtop_init_ppp_s
 | 
			
		||||
glibtop_get_ppp_s
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/shm_limits.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>shm_limits</FILE>
 | 
			
		||||
<TITLE>Shared Memory Limits</TITLE>
 | 
			
		||||
GLIBTOP_IPC_SHMMAX
 | 
			
		||||
GLIBTOP_IPC_SHMMIN
 | 
			
		||||
GLIBTOP_IPC_SHMMNI
 | 
			
		||||
GLIBTOP_IPC_SHMSEG
 | 
			
		||||
GLIBTOP_IPC_SHMALL
 | 
			
		||||
GLIBTOP_MAX_SHM_LIMITS
 | 
			
		||||
glibtop_shm_limits
 | 
			
		||||
glibtop_get_shm_limits
 | 
			
		||||
glibtop_get_shm_limits_r
 | 
			
		||||
glibtop_get_shm_limits_l
 | 
			
		||||
glibtop_init_shm_limits_p
 | 
			
		||||
glibtop_get_shm_limits_p
 | 
			
		||||
glibtop_init_shm_limits_s
 | 
			
		||||
glibtop_get_shm_limits_s
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/uptime.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>uptime</FILE>
 | 
			
		||||
<TITLE>Uptime</TITLE>
 | 
			
		||||
GLIBTOP_UPTIME_UPTIME
 | 
			
		||||
GLIBTOP_UPTIME_IDLETIME
 | 
			
		||||
GLIBTOP_UPTIME_BOOT_TIME
 | 
			
		||||
GLIBTOP_MAX_UPTIME
 | 
			
		||||
glibtop_uptime
 | 
			
		||||
glibtop_get_uptime
 | 
			
		||||
glibtop_get_uptime_r
 | 
			
		||||
glibtop_get_uptime_l
 | 
			
		||||
glibtop_init_uptime_p
 | 
			
		||||
glibtop_get_uptime_p
 | 
			
		||||
glibtop_init_uptime_s
 | 
			
		||||
glibtop_get_uptime_s
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/netlist.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>netlist</FILE>
 | 
			
		||||
<TITLE>Net List</TITLE>
 | 
			
		||||
GLIBTOP_NETLIST_NUMBER
 | 
			
		||||
GLIBTOP_MAX_NETLIST
 | 
			
		||||
glibtop_netlist
 | 
			
		||||
glibtop_get_netlist
 | 
			
		||||
glibtop_get_netlist_r
 | 
			
		||||
glibtop_get_netlist_l
 | 
			
		||||
glibtop_init_netlist_p
 | 
			
		||||
glibtop_get_netlist_p
 | 
			
		||||
glibtop_init_netlist_s
 | 
			
		||||
glibtop_get_netlist_s
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/open.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>open</FILE>
 | 
			
		||||
GLIBTOP_INIT_NO_OPEN
 | 
			
		||||
GLIBTOP_INIT_NO_INIT
 | 
			
		||||
GLIBTOP_FEATURES_NO_SERVER
 | 
			
		||||
GLIBTOP_FEATURES_EXCEPT
 | 
			
		||||
GLIBTOP_METHOD_DIRECT
 | 
			
		||||
GLIBTOP_METHOD_PIPE
 | 
			
		||||
GLIBTOP_METHOD_INET
 | 
			
		||||
GLIBTOP_METHOD_UNIX
 | 
			
		||||
GLIBTOP_ERROR_METHOD_IGNORE
 | 
			
		||||
GLIBTOP_ERROR_METHOD_WARN_ONCE
 | 
			
		||||
GLIBTOP_ERROR_METHOD_WARN
 | 
			
		||||
GLIBTOP_ERROR_METHOD_ABORT
 | 
			
		||||
GLIBTOP_ERROR_METHOD_DEFAULT
 | 
			
		||||
glibtop_open_l
 | 
			
		||||
glibtop_init_p
 | 
			
		||||
glibtop_open_p
 | 
			
		||||
glibtop_open_s
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/parameter.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>parameter</FILE>
 | 
			
		||||
GLIBTOP_PARAM_METHOD
 | 
			
		||||
GLIBTOP_PARAM_FEATURES
 | 
			
		||||
GLIBTOP_PARAM_COMMAND
 | 
			
		||||
GLIBTOP_PARAM_HOST
 | 
			
		||||
GLIBTOP_PARAM_PORT
 | 
			
		||||
GLIBTOP_PARAM_ERROR_METHOD
 | 
			
		||||
GLIBTOP_PARAM_REQUIRED
 | 
			
		||||
glibtop_get_parameter
 | 
			
		||||
glibtop_set_parameter
 | 
			
		||||
glibtop_get_parameter_l
 | 
			
		||||
glibtop_set_parameter_l
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/procargs.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>procargs</FILE>
 | 
			
		||||
glibtop_proc_args
 | 
			
		||||
glibtop_get_proc_args
 | 
			
		||||
glibtop_get_proc_argv
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/procmem.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>procmem</FILE>
 | 
			
		||||
GLIBTOP_PROC_MEM_SIZE
 | 
			
		||||
GLIBTOP_PROC_MEM_VSIZE
 | 
			
		||||
GLIBTOP_PROC_MEM_RESIDENT
 | 
			
		||||
GLIBTOP_PROC_MEM_SHARE
 | 
			
		||||
GLIBTOP_PROC_MEM_RSS
 | 
			
		||||
GLIBTOP_PROC_MEM_RSS_RLIM
 | 
			
		||||
GLIBTOP_MAX_PROC_MEM
 | 
			
		||||
glibtop_proc_mem
 | 
			
		||||
glibtop_get_proc_mem
 | 
			
		||||
glibtop_get_proc_mem_r
 | 
			
		||||
glibtop_get_proc_mem_l
 | 
			
		||||
glibtop_init_proc_mem_p
 | 
			
		||||
glibtop_get_proc_mem_p
 | 
			
		||||
glibtop_init_proc_mem_s
 | 
			
		||||
glibtop_get_proc_mem_s
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/procopenfiles.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>procopenfiles</FILE>
 | 
			
		||||
GLIBTOP_PROC_OPEN_FILES_NUMBER
 | 
			
		||||
GLIBTOP_PROC_OPEN_FILES_TOTAL
 | 
			
		||||
GLIBTOP_PROC_OPEN_FILES_SIZE
 | 
			
		||||
GLIBTOP_MAX_PROC_OPEN_FILES
 | 
			
		||||
GLIBTOP_FILE_ENTRY_FD
 | 
			
		||||
GLIBTOP_FILE_ENTRY_NAME
 | 
			
		||||
GLIBTOP_FILE_ENTRY_TYPE
 | 
			
		||||
GLIBTOP_FILE_ENTRY_INETSOCKET_DST_HOST
 | 
			
		||||
GLIBTOP_FILE_ENTRY_INETSOCKET_DST_PORT
 | 
			
		||||
GLIBTOP_MAX_OPEN_FILE_ENTRY
 | 
			
		||||
GLIBTOP_OPEN_FILENAME_LEN
 | 
			
		||||
GLIBTOP_OPEN_DEST_HOST_LEN
 | 
			
		||||
glibtop_open_files_entry
 | 
			
		||||
glibtop_proc_open_files
 | 
			
		||||
glibtop_get_proc_open_files
 | 
			
		||||
glibtop_get_proc_open_files_r
 | 
			
		||||
glibtop_get_proc_open_files_l
 | 
			
		||||
glibtop_init_proc_open_files_p
 | 
			
		||||
glibtop_get_proc_open_files_p
 | 
			
		||||
glibtop_init_proc_open_files_s
 | 
			
		||||
glibtop_get_proc_open_files_s
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/procsegment.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>procsegment</FILE>
 | 
			
		||||
GLIBTOP_PROC_SEGMENT_TEXT_RSS
 | 
			
		||||
GLIBTOP_PROC_SEGMENT_SHLIB_RSS
 | 
			
		||||
GLIBTOP_PROC_SEGMENT_DATA_RSS
 | 
			
		||||
GLIBTOP_PROC_SEGMENT_STACK_RSS
 | 
			
		||||
GLIBTOP_PROC_SEGMENT_DIRTY_SIZE
 | 
			
		||||
GLIBTOP_PROC_SEGMENT_START_CODE
 | 
			
		||||
GLIBTOP_PROC_SEGMENT_END_CODE
 | 
			
		||||
GLIBTOP_PROC_SEGMENT_START_STACK
 | 
			
		||||
GLIBTOP_MAX_PROC_SEGMENT
 | 
			
		||||
glibtop_proc_segment
 | 
			
		||||
glibtop_get_proc_segment
 | 
			
		||||
glibtop_get_proc_segment_r
 | 
			
		||||
glibtop_get_proc_segment_l
 | 
			
		||||
glibtop_init_proc_segment_p
 | 
			
		||||
glibtop_get_proc_segment_p
 | 
			
		||||
glibtop_init_proc_segment_s
 | 
			
		||||
glibtop_get_proc_segment_s
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/procsignal.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>procsignal</FILE>
 | 
			
		||||
GLIBTOP_PROC_SIGNAL_SIGNAL
 | 
			
		||||
GLIBTOP_PROC_SIGNAL_BLOCKED
 | 
			
		||||
GLIBTOP_PROC_SIGNAL_SIGIGNORE
 | 
			
		||||
GLIBTOP_PROC_SIGNAL_SIGCATCH
 | 
			
		||||
GLIBTOP_MAX_PROC_SIGNAL
 | 
			
		||||
glibtop_proc_signal
 | 
			
		||||
glibtop_get_proc_signal
 | 
			
		||||
glibtop_get_proc_signal_r
 | 
			
		||||
glibtop_get_proc_signal_l
 | 
			
		||||
glibtop_init_proc_signal_p
 | 
			
		||||
glibtop_get_proc_signal_p
 | 
			
		||||
glibtop_init_proc_signal_s
 | 
			
		||||
glibtop_get_proc_signal_s
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/sysdeps.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>sysdeps</FILE>
 | 
			
		||||
GLIBTOP_SYSDEPS_FEATURES
 | 
			
		||||
GLIBTOP_SYSDEPS_CPU
 | 
			
		||||
GLIBTOP_SYSDEPS_MEM
 | 
			
		||||
GLIBTOP_SYSDEPS_SWAP
 | 
			
		||||
GLIBTOP_SYSDEPS_UPTIME
 | 
			
		||||
GLIBTOP_SYSDEPS_LOADAVG
 | 
			
		||||
GLIBTOP_SYSDEPS_SHM_LIMITS
 | 
			
		||||
GLIBTOP_SYSDEPS_MSG_LIMITS
 | 
			
		||||
GLIBTOP_SYSDEPS_SEM_LIMITS
 | 
			
		||||
GLIBTOP_SYSDEPS_PROCLIST
 | 
			
		||||
GLIBTOP_SYSDEPS_PROC_STATE
 | 
			
		||||
GLIBTOP_SYSDEPS_PROC_UID
 | 
			
		||||
GLIBTOP_SYSDEPS_PROC_MEM
 | 
			
		||||
GLIBTOP_SYSDEPS_PROC_TIME
 | 
			
		||||
GLIBTOP_SYSDEPS_PROC_SIGNAL
 | 
			
		||||
GLIBTOP_SYSDEPS_PROC_KERNEL
 | 
			
		||||
GLIBTOP_SYSDEPS_PROC_SEGMENT
 | 
			
		||||
GLIBTOP_SYSDEPS_PROC_ARGS
 | 
			
		||||
GLIBTOP_SYSDEPS_PROC_MAP
 | 
			
		||||
GLIBTOP_SYSDEPS_MOUNTLIST
 | 
			
		||||
GLIBTOP_SYSDEPS_FSUSAGE
 | 
			
		||||
GLIBTOP_SYSDEPS_NETLOAD
 | 
			
		||||
GLIBTOP_SYSDEPS_PPP
 | 
			
		||||
GLIBTOP_SYSDEPS_NETLIST
 | 
			
		||||
GLIBTOP_SYSDEPS_PROC_OPEN_FILES
 | 
			
		||||
GLIBTOP_MAX_SYSDEPS
 | 
			
		||||
GLIBTOP_SYSDEPS_ALL
 | 
			
		||||
glibtop_sysdeps
 | 
			
		||||
glibtop_get_sysdeps
 | 
			
		||||
glibtop_get_sysdeps_r
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/procstate.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>procstate</FILE>
 | 
			
		||||
GLIBTOP_PROC_STATE_CMD
 | 
			
		||||
GLIBTOP_PROC_STATE_STATE
 | 
			
		||||
GLIBTOP_PROC_STATE_UID
 | 
			
		||||
GLIBTOP_PROC_STATE_GID
 | 
			
		||||
GLIBTOP_PROC_STATE_RUID
 | 
			
		||||
GLIBTOP_PROC_STATE_RGID
 | 
			
		||||
GLIBTOP_PROC_STATE_HAS_CPU
 | 
			
		||||
GLIBTOP_PROC_STATE_PROCESSOR
 | 
			
		||||
GLIBTOP_PROC_STATE_LAST_PROCESSOR
 | 
			
		||||
GLIBTOP_MAX_PROC_STATE
 | 
			
		||||
GLIBTOP_PROCESS_RUNNING
 | 
			
		||||
GLIBTOP_PROCESS_INTERRUPTIBLE
 | 
			
		||||
GLIBTOP_PROCESS_UNINTERRUPTIBLE
 | 
			
		||||
GLIBTOP_PROCESS_ZOMBIE
 | 
			
		||||
GLIBTOP_PROCESS_STOPPED
 | 
			
		||||
GLIBTOP_PROCESS_SWAPPING
 | 
			
		||||
GLIBTOP_PROCESS_DEAD
 | 
			
		||||
glibtop_proc_state
 | 
			
		||||
glibtop_get_proc_state
 | 
			
		||||
glibtop_get_proc_state_r
 | 
			
		||||
glibtop_get_proc_state_l
 | 
			
		||||
glibtop_init_proc_state_p
 | 
			
		||||
glibtop_get_proc_state_p
 | 
			
		||||
glibtop_init_proc_state_s
 | 
			
		||||
glibtop_get_proc_state_s
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/procuid.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>procuid</FILE>
 | 
			
		||||
GLIBTOP_PROC_UID_UID
 | 
			
		||||
GLIBTOP_PROC_UID_EUID
 | 
			
		||||
GLIBTOP_PROC_UID_GID
 | 
			
		||||
GLIBTOP_PROC_UID_EGID
 | 
			
		||||
GLIBTOP_PROC_UID_SUID
 | 
			
		||||
GLIBTOP_PROC_UID_SGID
 | 
			
		||||
GLIBTOP_PROC_UID_FSUID
 | 
			
		||||
GLIBTOP_PROC_UID_FSGID
 | 
			
		||||
GLIBTOP_PROC_UID_PID
 | 
			
		||||
GLIBTOP_PROC_UID_PPID
 | 
			
		||||
GLIBTOP_PROC_UID_PGRP
 | 
			
		||||
GLIBTOP_PROC_UID_SESSION
 | 
			
		||||
GLIBTOP_PROC_UID_TTY
 | 
			
		||||
GLIBTOP_PROC_UID_TPGID
 | 
			
		||||
GLIBTOP_PROC_UID_PRIORITY
 | 
			
		||||
GLIBTOP_PROC_UID_NICE
 | 
			
		||||
GLIBTOP_PROC_UID_NGROUPS
 | 
			
		||||
GLIBTOP_PROC_UID_GROUPS
 | 
			
		||||
GLIBTOP_MAX_PROC_UID
 | 
			
		||||
glibtop_proc_uid
 | 
			
		||||
GLIBTOP_MAX_GROUPS
 | 
			
		||||
glibtop_get_proc_uid
 | 
			
		||||
glibtop_get_proc_uid_r
 | 
			
		||||
glibtop_get_proc_uid_l
 | 
			
		||||
glibtop_init_proc_uid_p
 | 
			
		||||
glibtop_get_proc_uid_p
 | 
			
		||||
glibtop_init_proc_uid_s
 | 
			
		||||
glibtop_get_proc_uid_s
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/proctime.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>proctime</FILE>
 | 
			
		||||
glibtop_proc_time
 | 
			
		||||
glibtop_get_proc_time
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/signal.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>signal</FILE>
 | 
			
		||||
glibtop_signame
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/procmap.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>procmap</FILE>
 | 
			
		||||
GLIBTOP_PROC_MAP_NUMBER
 | 
			
		||||
GLIBTOP_PROC_MAP_TOTAL
 | 
			
		||||
GLIBTOP_PROC_MAP_SIZE
 | 
			
		||||
GLIBTOP_MAX_PROC_MAP
 | 
			
		||||
GLIBTOP_MAP_ENTRY_START
 | 
			
		||||
GLIBTOP_MAP_ENTRY_END
 | 
			
		||||
GLIBTOP_MAP_ENTRY_OFFSET
 | 
			
		||||
GLIBTOP_MAP_ENTRY_PERM
 | 
			
		||||
GLIBTOP_MAP_ENTRY_INODE
 | 
			
		||||
GLIBTOP_MAP_ENTRY_DEVICE
 | 
			
		||||
GLIBTOP_MAP_ENTRY_FILENAME
 | 
			
		||||
GLIBTOP_MAP_ENTRY_SIZE
 | 
			
		||||
GLIBTOP_MAP_ENTRY_RSS
 | 
			
		||||
GLIBTOP_MAP_ENTRY_SHARED_CLEAN
 | 
			
		||||
GLIBTOP_MAP_ENTRY_SHARED_DIRTY
 | 
			
		||||
GLIBTOP_MAP_ENTRY_PRIVATE_CLEAN
 | 
			
		||||
GLIBTOP_MAP_ENTRY_PRIVATE_DIRTY
 | 
			
		||||
GLIBTOP_MAX_MAP_ENTRY
 | 
			
		||||
GLIBTOP_MAP_FILENAME_LEN
 | 
			
		||||
GLIBTOP_MAP_PERM_READ
 | 
			
		||||
GLIBTOP_MAP_PERM_WRITE
 | 
			
		||||
GLIBTOP_MAP_PERM_EXECUTE
 | 
			
		||||
GLIBTOP_MAP_PERM_SHARED
 | 
			
		||||
GLIBTOP_MAP_PERM_PRIVATE
 | 
			
		||||
glibtop_map_entry
 | 
			
		||||
glibtop_proc_map
 | 
			
		||||
glibtop_get_proc_map
 | 
			
		||||
glibtop_get_proc_map_r
 | 
			
		||||
glibtop_get_proc_map_l
 | 
			
		||||
glibtop_init_proc_map_p
 | 
			
		||||
glibtop_get_proc_map_p
 | 
			
		||||
glibtop_init_proc_map_s
 | 
			
		||||
glibtop_get_proc_map_s
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/sysinfo.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>sysinfo</FILE>
 | 
			
		||||
GLIBTOP_SYSINFO_NCPU
 | 
			
		||||
GLIBTOP_SYSINFO_CPUINFO
 | 
			
		||||
GLIBTOP_MAX_SYSINFO
 | 
			
		||||
glibtop_sysinfo
 | 
			
		||||
glibtop_entry
 | 
			
		||||
glibtop_get_sysinfo_r
 | 
			
		||||
glibtop_get_sysinfo_s
 | 
			
		||||
glibtop_get_sysinfo
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/union.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>union</FILE>
 | 
			
		||||
glibtop_union
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/version.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>version</FILE>
 | 
			
		||||
LIBGTOP_VERSION_STRING
 | 
			
		||||
glibtop_send_version
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/proclist.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>proclist</FILE>
 | 
			
		||||
GLIBTOP_KERN_PROC_ALL
 | 
			
		||||
GLIBTOP_KERN_PROC_PID
 | 
			
		||||
GLIBTOP_KERN_PROC_PGRP
 | 
			
		||||
GLIBTOP_KERN_PROC_SESSION
 | 
			
		||||
GLIBTOP_KERN_PROC_TTY
 | 
			
		||||
GLIBTOP_KERN_PROC_UID
 | 
			
		||||
GLIBTOP_KERN_PROC_RUID
 | 
			
		||||
GLIBTOP_KERN_PROC_MASK
 | 
			
		||||
GLIBTOP_EXCLUDE_IDLE
 | 
			
		||||
GLIBTOP_EXCLUDE_SYSTEM
 | 
			
		||||
GLIBTOP_EXCLUDE_NOTTY
 | 
			
		||||
glibtop_proclist
 | 
			
		||||
glibtop_get_proclist
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/sem_limits.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>sem_limits</FILE>
 | 
			
		||||
GLIBTOP_IPC_SEMMAP
 | 
			
		||||
GLIBTOP_IPC_SEMMNI
 | 
			
		||||
GLIBTOP_IPC_SEMMNS
 | 
			
		||||
GLIBTOP_IPC_SEMMNU
 | 
			
		||||
GLIBTOP_IPC_SEMMSL
 | 
			
		||||
GLIBTOP_IPC_SEMOPM
 | 
			
		||||
GLIBTOP_IPC_SEMUME
 | 
			
		||||
GLIBTOP_IPC_SEMUSZ
 | 
			
		||||
GLIBTOP_IPC_SEMVMX
 | 
			
		||||
GLIBTOP_IPC_SEMAEM
 | 
			
		||||
GLIBTOP_MAX_SEM_LIMITS
 | 
			
		||||
glibtop_sem_limits
 | 
			
		||||
glibtop_get_sem_limits
 | 
			
		||||
glibtop_get_sem_limits_r
 | 
			
		||||
glibtop_get_sem_limits_l
 | 
			
		||||
glibtop_init_sem_limits_p
 | 
			
		||||
glibtop_get_sem_limits_p
 | 
			
		||||
glibtop_init_sem_limits_s
 | 
			
		||||
glibtop_get_sem_limits_s
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/prockernel.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>prockernel</FILE>
 | 
			
		||||
GLIBTOP_PROC_KERNEL_K_FLAGS
 | 
			
		||||
GLIBTOP_PROC_KERNEL_MIN_FLT
 | 
			
		||||
GLIBTOP_PROC_KERNEL_MAJ_FLT
 | 
			
		||||
GLIBTOP_PROC_KERNEL_CMIN_FLT
 | 
			
		||||
GLIBTOP_PROC_KERNEL_CMAJ_FLT
 | 
			
		||||
GLIBTOP_PROC_KERNEL_KSTK_ESP
 | 
			
		||||
GLIBTOP_PROC_KERNEL_KSTK_EIP
 | 
			
		||||
GLIBTOP_PROC_KERNEL_NWCHAN
 | 
			
		||||
GLIBTOP_PROC_KERNEL_WCHAN
 | 
			
		||||
GLIBTOP_MAX_PROC_KERNEL
 | 
			
		||||
glibtop_proc_kernel
 | 
			
		||||
glibtop_get_proc_kernel
 | 
			
		||||
glibtop_get_proc_kernel_r
 | 
			
		||||
glibtop_get_proc_kernel_l
 | 
			
		||||
glibtop_init_proc_kernel_p
 | 
			
		||||
glibtop_get_proc_kernel_p
 | 
			
		||||
glibtop_init_proc_kernel_s
 | 
			
		||||
glibtop_get_proc_kernel_s
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/fsusage.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>fsusage</FILE>
 | 
			
		||||
GLIBTOP_FSUSAGE_BLOCKS
 | 
			
		||||
GLIBTOP_FSUSAGE_BFREE
 | 
			
		||||
GLIBTOP_FSUSAGE_BAVAIL
 | 
			
		||||
GLIBTOP_FSUSAGE_FILES
 | 
			
		||||
GLIBTOP_FSUSAGE_FFREE
 | 
			
		||||
GLIBTOP_FSUSAGE_BLOCK_SIZE
 | 
			
		||||
GLIBTOP_FSUSAGE_READ
 | 
			
		||||
GLIBTOP_FSUSAGE_WRITE
 | 
			
		||||
GLIBTOP_MAX_FSUSAGE
 | 
			
		||||
glibtop_fsusage
 | 
			
		||||
glibtop_get_fsusage
 | 
			
		||||
glibtop_get_fsusage_r
 | 
			
		||||
glibtop_get_fsusage_l
 | 
			
		||||
glibtop_get_fsusage_s
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/loadavg.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>loadavg</FILE>
 | 
			
		||||
GLIBTOP_LOADAVG_LOADAVG
 | 
			
		||||
GLIBTOP_LOADAVG_NR_RUNNING
 | 
			
		||||
GLIBTOP_LOADAVG_NR_TASKS
 | 
			
		||||
GLIBTOP_LOADAVG_LAST_PID
 | 
			
		||||
GLIBTOP_MAX_LOADAVG
 | 
			
		||||
glibtop_loadavg
 | 
			
		||||
glibtop_get_loadavg
 | 
			
		||||
glibtop_get_loadavg_r
 | 
			
		||||
glibtop_get_loadavg_l
 | 
			
		||||
glibtop_init_loadavg_p
 | 
			
		||||
glibtop_get_loadavg_p
 | 
			
		||||
glibtop_init_loadavg_s
 | 
			
		||||
glibtop_get_loadavg_s
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/mem.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>mem</FILE>
 | 
			
		||||
GLIBTOP_MEM_TOTAL
 | 
			
		||||
GLIBTOP_MEM_USED
 | 
			
		||||
GLIBTOP_MEM_FREE
 | 
			
		||||
GLIBTOP_MEM_SHARED
 | 
			
		||||
GLIBTOP_MEM_BUFFER
 | 
			
		||||
GLIBTOP_MEM_CACHED
 | 
			
		||||
GLIBTOP_MEM_USER
 | 
			
		||||
GLIBTOP_MEM_LOCKED
 | 
			
		||||
GLIBTOP_MAX_MEM
 | 
			
		||||
glibtop_mem
 | 
			
		||||
glibtop_get_mem
 | 
			
		||||
glibtop_get_mem_r
 | 
			
		||||
glibtop_get_mem_l
 | 
			
		||||
glibtop_init_mem_p
 | 
			
		||||
glibtop_get_mem_p
 | 
			
		||||
glibtop_init_mem_s
 | 
			
		||||
glibtop_get_mem_s
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/mountlist.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>mountlist</FILE>
 | 
			
		||||
GLIBTOP_MOUNTLIST_NUMBER
 | 
			
		||||
GLIBTOP_MOUNTLIST_TOTAL
 | 
			
		||||
GLIBTOP_MOUNTLIST_SIZE
 | 
			
		||||
GLIBTOP_MAX_MOUNTLIST
 | 
			
		||||
glibtop_mountentry
 | 
			
		||||
glibtop_mountlist
 | 
			
		||||
glibtop_get_mountlist
 | 
			
		||||
glibtop_get_mountlist_r
 | 
			
		||||
glibtop_get_mountlist_l
 | 
			
		||||
glibtop_get_mountlist_s
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/msg_limits.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>msg_limits</FILE>
 | 
			
		||||
GLIBTOP_IPC_MSGPOOL
 | 
			
		||||
GLIBTOP_IPC_MSGMAP
 | 
			
		||||
GLIBTOP_IPC_MSGMAX
 | 
			
		||||
GLIBTOP_IPC_MSGMNB
 | 
			
		||||
GLIBTOP_IPC_MSGMNI
 | 
			
		||||
GLIBTOP_IPC_MSGSSZ
 | 
			
		||||
GLIBTOP_IPC_MSGTQL
 | 
			
		||||
GLIBTOP_MAX_MSG_LIMITS
 | 
			
		||||
glibtop_msg_limits
 | 
			
		||||
glibtop_get_msg_limits
 | 
			
		||||
glibtop_get_msg_limits_r
 | 
			
		||||
glibtop_get_msg_limits_l
 | 
			
		||||
glibtop_init_msg_limits_p
 | 
			
		||||
glibtop_get_msg_limits_p
 | 
			
		||||
glibtop_init_msg_limits_s
 | 
			
		||||
glibtop_get_msg_limits_s
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/cpu.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>cpu</FILE>
 | 
			
		||||
GLIBTOP_CPU_TOTAL
 | 
			
		||||
GLIBTOP_CPU_USER
 | 
			
		||||
GLIBTOP_CPU_NICE
 | 
			
		||||
GLIBTOP_CPU_SYS
 | 
			
		||||
GLIBTOP_CPU_IDLE
 | 
			
		||||
GLIBTOP_CPU_FREQUENCY
 | 
			
		||||
GLIBTOP_XCPU_TOTAL
 | 
			
		||||
GLIBTOP_XCPU_USER
 | 
			
		||||
GLIBTOP_XCPU_NICE
 | 
			
		||||
GLIBTOP_XCPU_SYS
 | 
			
		||||
GLIBTOP_XCPU_IDLE
 | 
			
		||||
GLIBTOP_XCPU_FLAGS
 | 
			
		||||
GLIBTOP_CPU_IOWAIT
 | 
			
		||||
GLIBTOP_CPU_IRQ
 | 
			
		||||
GLIBTOP_CPU_SOFTIRQ
 | 
			
		||||
GLIBTOP_XCPU_IOWAIT
 | 
			
		||||
GLIBTOP_XCPU_IRQ
 | 
			
		||||
GLIBTOP_XCPU_SOFTIRQ
 | 
			
		||||
GLIBTOP_MAX_CPU
 | 
			
		||||
GLIBTOP_NCPU
 | 
			
		||||
glibtop_cpu
 | 
			
		||||
glibtop_get_cpu
 | 
			
		||||
glibtop_get_cpu_r
 | 
			
		||||
glibtop_get_cpu_l
 | 
			
		||||
glibtop_init_cpu_p
 | 
			
		||||
glibtop_get_cpu_p
 | 
			
		||||
glibtop_init_cpu_s
 | 
			
		||||
glibtop_get_cpu_s
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
<INCLUDE>glibtop/swap.h</INCLUDE>
 | 
			
		||||
<SECTION>
 | 
			
		||||
<FILE>swap</FILE>
 | 
			
		||||
GLIBTOP_SWAP_TOTAL
 | 
			
		||||
GLIBTOP_SWAP_USED
 | 
			
		||||
GLIBTOP_SWAP_FREE
 | 
			
		||||
GLIBTOP_SWAP_PAGEIN
 | 
			
		||||
GLIBTOP_SWAP_PAGEOUT
 | 
			
		||||
GLIBTOP_MAX_SWAP
 | 
			
		||||
glibtop_swap
 | 
			
		||||
glibtop_get_swap
 | 
			
		||||
glibtop_get_swap_r
 | 
			
		||||
glibtop_get_swap_l
 | 
			
		||||
glibtop_init_swap_p
 | 
			
		||||
glibtop_get_swap_p
 | 
			
		||||
glibtop_init_swap_s
 | 
			
		||||
glibtop_get_swap_s
 | 
			
		||||
</SECTION>
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										4
									
								
								doc/reference/version.xml.in
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								doc/reference/version.xml.in
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,4 @@
 | 
			
		||||
<?xml version="1.0" standalone="no"?>
 | 
			
		||||
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
 | 
			
		||||
    "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
 | 
			
		||||
<phrase>@PACKAGE_VERSION@</phrase>
 | 
			
		||||
@@ -1,27 +0,0 @@
 | 
			
		||||
.deps
 | 
			
		||||
.libs
 | 
			
		||||
Makefile
 | 
			
		||||
Makefile.in
 | 
			
		||||
first
 | 
			
		||||
first_linux
 | 
			
		||||
first_static
 | 
			
		||||
second
 | 
			
		||||
third
 | 
			
		||||
third_linux
 | 
			
		||||
third_static
 | 
			
		||||
second_static
 | 
			
		||||
second_linux
 | 
			
		||||
smp_static sysdeps_static netload_static procmap_static mountlist_static
 | 
			
		||||
smp sysdeps netload procmap mountlist
 | 
			
		||||
timings timings_static
 | 
			
		||||
pprint
 | 
			
		||||
pprint_static
 | 
			
		||||
procargs
 | 
			
		||||
procargs_static
 | 
			
		||||
proclist
 | 
			
		||||
df
 | 
			
		||||
df_static
 | 
			
		||||
netlist
 | 
			
		||||
netlist_static
 | 
			
		||||
openfiles
 | 
			
		||||
openfiles_static
 | 
			
		||||
@@ -1,3 +1,11 @@
 | 
			
		||||
2007-05-19  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	* Makefile.am:
 | 
			
		||||
	* mem.c: (main):
 | 
			
		||||
	* wd.c: (main):
 | 
			
		||||
 | 
			
		||||
	Fixed wd and new simple mem example.
 | 
			
		||||
 | 
			
		||||
2006-02-27  Benoît Dejean  <benoit@placenet.org>
 | 
			
		||||
 | 
			
		||||
	* pprint.c: (pprint_get_proc_mem), (main):
 | 
			
		||||
 
 | 
			
		||||
@@ -1,14 +1,17 @@
 | 
			
		||||
## Process this file with automake to produce Makefile.in
 | 
			
		||||
 | 
			
		||||
LINK			= $(LIBTOOL) --mode=link $(CC) $(CFLAGS) $(LDFLAGS) -o $@
 | 
			
		||||
AM_CPPFLAGS = \
 | 
			
		||||
	-I$(top_srcdir) \
 | 
			
		||||
	-I$(top_srcdir)/include \
 | 
			
		||||
	-I$(top_srcdir)/sysdeps/$(sysdeps_dir) \
 | 
			
		||||
	-DGTOPLOCALEDIR=\"$(localedir)\" \
 | 
			
		||||
	$(GLIB_CFLAGS)
 | 
			
		||||
 | 
			
		||||
INCLUDES		= @INCLUDES@
 | 
			
		||||
 | 
			
		||||
DEFS			= @DEFS@
 | 
			
		||||
AM_LDFLAGS			= $(LIBGTOP_EXTRA_LIBS)
 | 
			
		||||
 | 
			
		||||
noinst_PROGRAMS	= 	first second pprint procargs df netlist \
 | 
			
		||||
			  mountlist procmap netload sysdeps timings \
 | 
			
		||||
			  openfiles smp proclist
 | 
			
		||||
			  openfiles smp proclist free wd affinity
 | 
			
		||||
 | 
			
		||||
first_SOURCES		= first.c
 | 
			
		||||
first_LDADD		= $(top_builddir)/lib/libgtop-2.0.la
 | 
			
		||||
@@ -51,3 +54,12 @@ openfiles_LDADD		= $(top_builddir)/lib/libgtop-2.0.la
 | 
			
		||||
 | 
			
		||||
proclist_SOURCES	= proclist.c
 | 
			
		||||
proclist_LDADD		= $(top_builddir)/lib/libgtop-2.0.la
 | 
			
		||||
 | 
			
		||||
wd_SOURCES	= wd.c
 | 
			
		||||
wd_LDADD	= $(top_builddir)/lib/libgtop-2.0.la
 | 
			
		||||
 | 
			
		||||
free_SOURCE	= mem.c
 | 
			
		||||
free_LDADD	= $(top_builddir)/lib/libgtop-2.0.la
 | 
			
		||||
 | 
			
		||||
affinity_SOURCES	= affinity.c
 | 
			
		||||
affinity_LDADD	= $(top_builddir)/lib/libgtop-2.0.la
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										34
									
								
								examples/affinity.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										34
									
								
								examples/affinity.c
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,34 @@
 | 
			
		||||
#include <glibtop.h>
 | 
			
		||||
#include <glibtop/procaffinity.h>
 | 
			
		||||
 | 
			
		||||
#include <glib.h>
 | 
			
		||||
#include <unistd.h>
 | 
			
		||||
 | 
			
		||||
int main(int argc, char **argv)
 | 
			
		||||
{
 | 
			
		||||
	pid_t pid;
 | 
			
		||||
	glibtop_proc_affinity buf;
 | 
			
		||||
	guint16 *cpus;
 | 
			
		||||
	size_t i;
 | 
			
		||||
 | 
			
		||||
	if (argc < 2 || !(pid = strtoul(argv[1], NULL, 0)))
 | 
			
		||||
		pid = getpid();
 | 
			
		||||
 | 
			
		||||
	glibtop_init();
 | 
			
		||||
 | 
			
		||||
	cpus = glibtop_get_proc_affinity(&buf, pid);
 | 
			
		||||
 | 
			
		||||
	g_print("Process %u:\n"
 | 
			
		||||
		" - all: %d\n",
 | 
			
		||||
		(unsigned)pid, buf.all);
 | 
			
		||||
 | 
			
		||||
	for (i = 0; i != buf.number; ++i)
 | 
			
		||||
		g_print(" - CPU#%u is set\n", cpus[i]);
 | 
			
		||||
 | 
			
		||||
	g_free(cpus);
 | 
			
		||||
 | 
			
		||||
	glibtop_close();
 | 
			
		||||
 | 
			
		||||
	return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@@ -13,37 +13,62 @@ static void print_fsusage(const char *mountpoint)
 | 
			
		||||
{
 | 
			
		||||
  glibtop_fsusage buf;
 | 
			
		||||
 | 
			
		||||
  enum { SIZE, USED, FREE, AVAIL, READ, WRITE, MAX };
 | 
			
		||||
  char **a = g_new0(char*, MAX);
 | 
			
		||||
 | 
			
		||||
  glibtop_get_fsusage(&buf, mountpoint);
 | 
			
		||||
 | 
			
		||||
  printf("%-20s %-10llu %-10llu %-10llu %.1f\n",
 | 
			
		||||
	 mountpoint,
 | 
			
		||||
	 buf.blocks * buf.block_size >> 20,
 | 
			
		||||
	 (buf.blocks - buf.bavail) * buf.block_size >> 20,
 | 
			
		||||
	 buf.bavail * buf.block_size >> 20,
 | 
			
		||||
	 (buf.blocks - buf.bavail) * 100.0 / buf.blocks
 | 
			
		||||
	 );
 | 
			
		||||
 | 
			
		||||
#define I(X) a[(X)]
 | 
			
		||||
  I(SIZE)  = g_format_size_full(buf.blocks * buf.block_size, G_FORMAT_SIZE_IEC_UNITS);
 | 
			
		||||
  I(USED)  = g_format_size_full((buf.blocks - buf.bavail)  * buf.block_size, G_FORMAT_SIZE_IEC_UNITS);
 | 
			
		||||
  I(FREE)  = g_format_size_full(buf.bfree * buf.block_size, G_FORMAT_SIZE_IEC_UNITS);
 | 
			
		||||
  I(AVAIL) = g_format_size_full(buf.bavail * buf.block_size, G_FORMAT_SIZE_IEC_UNITS);
 | 
			
		||||
  I(READ)  = g_format_size_full(buf.read, G_FORMAT_SIZE_IEC_UNITS);
 | 
			
		||||
  I(WRITE) = g_format_size_full(buf.write, G_FORMAT_SIZE_IEC_UNITS);
 | 
			
		||||
 | 
			
		||||
  printf("%#7x %10s %10s %10s %10s %5.1f%% %10s %10s %8lu %8lu %s\n",
 | 
			
		||||
    (unsigned)buf.flags,
 | 
			
		||||
    I(SIZE),
 | 
			
		||||
    I(USED),
 | 
			
		||||
    I(FREE),
 | 
			
		||||
    I(AVAIL),
 | 
			
		||||
    (buf.blocks - buf.bavail) * 100.0 / (buf.blocks ? buf.blocks : 1.0),
 | 
			
		||||
    I(READ),
 | 
			
		||||
    I(WRITE),
 | 
			
		||||
    (unsigned long)buf.files,
 | 
			
		||||
    (unsigned long)buf.ffree,
 | 
			
		||||
    mountpoint
 | 
			
		||||
    );
 | 
			
		||||
 | 
			
		||||
  g_strfreev(a);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
int main()
 | 
			
		||||
int main(int argc, char **argv)
 | 
			
		||||
{
 | 
			
		||||
  glibtop_mountlist buf;
 | 
			
		||||
  glibtop_mountentry *entries;
 | 
			
		||||
  size_t i;
 | 
			
		||||
 | 
			
		||||
  glibtop_init();
 | 
			
		||||
 | 
			
		||||
  printf("%-20s %-10s %-10s %-10s %-10s\n",
 | 
			
		||||
	 "Filesystem", "Size", "Used", "Avail", "Use%");
 | 
			
		||||
  printf("%-6s %10s %10s %10s %10s %5s %10s %10s %10s %10s %s\n",
 | 
			
		||||
	 "(flags)", "Size", "Used", "Free", "Avail", "Use%", "Read", "Write", "Files", "Files Free", "Mountpoint");
 | 
			
		||||
 | 
			
		||||
  entries = glibtop_get_mountlist(&buf, FALSE);
 | 
			
		||||
  if (argc > 1) {
 | 
			
		||||
    while (*++argv)
 | 
			
		||||
      print_fsusage(*argv);
 | 
			
		||||
  } else {
 | 
			
		||||
    glibtop_mountentry *entries;
 | 
			
		||||
    size_t i;
 | 
			
		||||
 | 
			
		||||
  for(i = 0; i < buf.number; ++i)
 | 
			
		||||
    {
 | 
			
		||||
      print_fsusage(entries[i].mountdir);
 | 
			
		||||
    }
 | 
			
		||||
    entries = glibtop_get_mountlist(&buf, TRUE);
 | 
			
		||||
 | 
			
		||||
  g_free(entries);
 | 
			
		||||
    for(i = 0; i < buf.number; ++i)
 | 
			
		||||
      {
 | 
			
		||||
	print_fsusage(entries[i].mountdir);
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
    g_free(entries);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  glibtop_close();
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifdef HAVE_CONFIG_H
 | 
			
		||||
@@ -49,9 +47,9 @@ main (int argc, char *argv [])
 | 
			
		||||
{
 | 
			
		||||
	glibtop_union data;
 | 
			
		||||
	glibtop_sysdeps sysdeps;
 | 
			
		||||
	unsigned c, method, count, port, i, *ptr;
 | 
			
		||||
	unsigned c, method, count, port, i;
 | 
			
		||||
	char buffer [BUFSIZ];
 | 
			
		||||
	pid_t pid, ppid;
 | 
			
		||||
	pid_t pid, ppid, *ptr;
 | 
			
		||||
	char *args;
 | 
			
		||||
 | 
			
		||||
	count = PROFILE_COUNT;
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										44
									
								
								examples/free.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										44
									
								
								examples/free.c
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,44 @@
 | 
			
		||||
#include <glibtop.h>
 | 
			
		||||
#include <glibtop/mem.h>
 | 
			
		||||
#include <glibtop/swap.h>
 | 
			
		||||
 | 
			
		||||
#include <glib.h>
 | 
			
		||||
#include <unistd.h>
 | 
			
		||||
 | 
			
		||||
static unsigned mb(guint64 n)
 | 
			
		||||
{
 | 
			
		||||
        return n >> 20;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
int main(int argc, char **argv)
 | 
			
		||||
{
 | 
			
		||||
        glibtop_mem mem;
 | 
			
		||||
        glibtop_swap swap;
 | 
			
		||||
 | 
			
		||||
	glibtop_init();
 | 
			
		||||
 | 
			
		||||
        glibtop_get_mem(&mem);
 | 
			
		||||
        glibtop_get_swap(&swap);
 | 
			
		||||
 | 
			
		||||
        printf("              total        used        free      shared  buff/cache   available\n");
 | 
			
		||||
 | 
			
		||||
        printf("%-7s %11u %11u %11u %11u %11u %11u\n",
 | 
			
		||||
               "Mem:",
 | 
			
		||||
                mb(mem.total),
 | 
			
		||||
                mb(mem.used - mem.buffer - mem.cached),
 | 
			
		||||
                mb(mem.free),
 | 
			
		||||
                mb(mem.shared),
 | 
			
		||||
                mb(mem.buffer + mem.cached),
 | 
			
		||||
                mb(mem.total - mem.user));
 | 
			
		||||
 | 
			
		||||
        printf("%-7s %11u %11u %11u\n",
 | 
			
		||||
               "Swap:",
 | 
			
		||||
                mb(swap.total),
 | 
			
		||||
                mb(swap.used),
 | 
			
		||||
                mb(swap.free));
 | 
			
		||||
 | 
			
		||||
	glibtop_close();
 | 
			
		||||
 | 
			
		||||
	return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifdef HAVE_CONFIG_H
 | 
			
		||||
 
 | 
			
		||||
@@ -14,8 +14,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifdef HAVE_CONFIG_H
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifdef HAVE_CONFIG_H
 | 
			
		||||
@@ -53,7 +51,7 @@ static char* hwaddress_format_for_display(glibtop_netload *buf)
 | 
			
		||||
 | 
			
		||||
	for(i = 0; i < sizeof buf->hwaddress; ++i)
 | 
			
		||||
		g_string_append_printf(repr, "%02X:",
 | 
			
		||||
				       (unsigned) ((char*)buf->hwaddress)[i]);
 | 
			
		||||
				       ((unsigned char*)buf->hwaddress)[i]);
 | 
			
		||||
 | 
			
		||||
	repr->str [ repr->len - 1] = ' ';
 | 
			
		||||
	str = g_string_free(repr, FALSE);
 | 
			
		||||
 
 | 
			
		||||
@@ -37,9 +37,16 @@ static void show_open_files(pid_t pid)
 | 
			
		||||
		  printf("socket %s:%d\n", files[i].info.sock.dest_host, files[i].info.sock.dest_port);
 | 
			
		||||
		  break;
 | 
			
		||||
 | 
			
		||||
	  case GLIBTOP_FILE_TYPE_INET6SOCKET:
 | 
			
		||||
		  printf("socket [%s]:%d\n", files[i].info.sock.dest_host, files[i].info.sock.dest_port);
 | 
			
		||||
		  break;
 | 
			
		||||
 | 
			
		||||
	  case GLIBTOP_FILE_TYPE_LOCALSOCKET:
 | 
			
		||||
		  printf("localsocket %s\n", files[i].info.localsock.name);
 | 
			
		||||
		  break;
 | 
			
		||||
 | 
			
		||||
	  default:
 | 
			
		||||
		  printf("unknown type\n");
 | 
			
		||||
	  }
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -3,6 +3,7 @@
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#include <glibtop.h>
 | 
			
		||||
#include <glibtop/sysinfo.h>
 | 
			
		||||
 | 
			
		||||
#include <glibtop/union.h>
 | 
			
		||||
 | 
			
		||||
@@ -20,18 +21,60 @@
 | 
			
		||||
#define PPRINT(DATA, FORMAT) printf("\t%4lu B %3lu " #DATA " = " FORMAT "\n", \
 | 
			
		||||
(unsigned long) sizeof buf.DATA, (unsigned long) buf_offsetof(DATA), buf.DATA)
 | 
			
		||||
 | 
			
		||||
#define PPRINT_ARRAY(ARRAY, SIZE, FORMAT) do { \
 | 
			
		||||
#define PPRINT_ARRAY(ARRAY, SIZE, FORMAT) do {				\
 | 
			
		||||
    size_t i;								\
 | 
			
		||||
    printf("\t%4lu B %3lu " #ARRAY "[%lu] = { ",			\
 | 
			
		||||
	   (unsigned long) sizeof buf.ARRAY,				\
 | 
			
		||||
	   (unsigned long) buf_offsetof(ARRAY),				\
 | 
			
		||||
	   (unsigned long) G_N_ELEMENTS(buf.ARRAY));			\
 | 
			
		||||
    for (i = 0; i < (SIZE); ++i) {					\
 | 
			
		||||
      if (!buf.ARRAY[i] && i < (SIZE - 1) && !buf.ARRAY[i + 1]) {	\
 | 
			
		||||
	do { i++; } while (i < SIZE && !buf.ARRAY[i]);			\
 | 
			
		||||
	printf("..., ");						\
 | 
			
		||||
      } else {								\
 | 
			
		||||
	printf(".%u = " FORMAT ", ", i, buf.ARRAY[i]);			\
 | 
			
		||||
      }									\
 | 
			
		||||
    }									\
 | 
			
		||||
    printf("}\n");							\
 | 
			
		||||
  } while(0)
 | 
			
		||||
 | 
			
		||||
#define PPRINT_ENTRY_ARRAY(ARRAY, SIZE) do { \
 | 
			
		||||
size_t i; \
 | 
			
		||||
printf("\t%4lu B %3lu " #ARRAY "[%lu] = { ", \
 | 
			
		||||
(unsigned long) sizeof buf.ARRAY, (unsigned long) buf_offsetof(ARRAY),\
 | 
			
		||||
(unsigned long) G_N_ELEMENTS(buf.ARRAY)); \
 | 
			
		||||
for(i = 0; i < (SIZE - 1); ++i) printf(".%u = " FORMAT ", ", i, buf.ARRAY[i]); \
 | 
			
		||||
printf(".%u = " FORMAT " }\n", SIZE - 1 , buf.ARRAY[SIZE - 1]); \
 | 
			
		||||
printf("\t%4lu B " #ARRAY "[%lu/%lu] = { \n", \
 | 
			
		||||
(unsigned long) sizeof buf->ARRAY, (unsigned long)(SIZE),	\
 | 
			
		||||
(unsigned long) G_N_ELEMENTS(buf->ARRAY)); \
 | 
			
		||||
for(i = 0; i < SIZE; ++i) { \
 | 
			
		||||
  if (buf->ARRAY[i].values) {			\
 | 
			
		||||
    printf ("\t[ ");				\
 | 
			
		||||
    PPRINT_HASHTABLE(buf->ARRAY[i].values);	\
 | 
			
		||||
    printf ("]\n");				\
 | 
			
		||||
  }						\
 | 
			
		||||
} \
 | 
			
		||||
printf("} "); \
 | 
			
		||||
} while(0)
 | 
			
		||||
 | 
			
		||||
#define PPRINT_HASHTABLE(HASHTABLE) do { \
 | 
			
		||||
g_hash_table_foreach (HASHTABLE, (GHFunc)pprint_hashtable_item, NULL); \
 | 
			
		||||
} while(0)
 | 
			
		||||
 | 
			
		||||
#define FOOTER_PPRINT() putchar('\n');
 | 
			
		||||
 | 
			
		||||
static void pprint_hashtable_item(gchar* key, gchar* value, gpointer user_data) 
 | 
			
		||||
{
 | 
			
		||||
  printf ("'%s': '%s', ", key, value);
 | 
			
		||||
}
 | 
			
		||||
static void pprint_get_sysinfo(void)
 | 
			
		||||
{
 | 
			
		||||
  const glibtop_sysinfo *buf;
 | 
			
		||||
 | 
			
		||||
  buf = glibtop_get_sysinfo();
 | 
			
		||||
 | 
			
		||||
  HEADER_PPRINT(glibtop_get_sysinfo);
 | 
			
		||||
  //PPRINT(flags, "%#llx");
 | 
			
		||||
  // PPRINT(ncpu, "%llu");
 | 
			
		||||
  PPRINT_ENTRY_ARRAY(cpuinfo, buf->ncpu);
 | 
			
		||||
  FOOTER_PPRINT();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static void pprint_get_cpu(void)
 | 
			
		||||
{
 | 
			
		||||
@@ -286,11 +329,34 @@ static void pprint_get_proc_mem(pid_t pid)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
static void pprint_get_proc_affinity(pid_t pid)
 | 
			
		||||
{
 | 
			
		||||
  glibtop_proc_affinity buf;
 | 
			
		||||
  guint32 i;
 | 
			
		||||
  guint16* cpus;
 | 
			
		||||
 | 
			
		||||
  cpus = glibtop_get_proc_affinity(&buf, pid);
 | 
			
		||||
 | 
			
		||||
  HEADER_PPRINT(glibtop_get_proc_affinity);
 | 
			
		||||
  PPRINT(flags, "%#llx");
 | 
			
		||||
  PPRINT(number, "%u");
 | 
			
		||||
  PPRINT(all, "%d");
 | 
			
		||||
 | 
			
		||||
  printf("\taffinity=");
 | 
			
		||||
  for (i = 0; i < buf.number; i++) {
 | 
			
		||||
    printf("%d, ", cpus[i]);
 | 
			
		||||
  }
 | 
			
		||||
  putchar('\n');
 | 
			
		||||
 | 
			
		||||
  FOOTER_PPRINT();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
int main()
 | 
			
		||||
{
 | 
			
		||||
  glibtop_init();
 | 
			
		||||
 | 
			
		||||
  pprint_get_sysinfo();
 | 
			
		||||
  pprint_get_cpu();
 | 
			
		||||
 | 
			
		||||
  pprint_get_fsusage("/");
 | 
			
		||||
@@ -317,6 +383,7 @@ int main()
 | 
			
		||||
 | 
			
		||||
  pprint_get_proc_kernel(getpid());
 | 
			
		||||
  pprint_get_proc_mem(getpid());
 | 
			
		||||
  pprint_get_proc_affinity(getpid());
 | 
			
		||||
 | 
			
		||||
  glibtop_close();
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,8 @@
 | 
			
		||||
#include <glibtop.h>
 | 
			
		||||
#include <glibtop/proclist.h>
 | 
			
		||||
#include <glibtop/procstate.h>
 | 
			
		||||
#include <glibtop/proctime.h>
 | 
			
		||||
#include <glibtop/procuid.h>
 | 
			
		||||
 | 
			
		||||
#include <glib.h>
 | 
			
		||||
 | 
			
		||||
@@ -11,20 +14,34 @@
 | 
			
		||||
 | 
			
		||||
static void print_pids(guint64 which, guint64 arg)
 | 
			
		||||
{
 | 
			
		||||
	unsigned *pids;
 | 
			
		||||
	pid_t *pids;
 | 
			
		||||
	unsigned i;
 | 
			
		||||
	glibtop_proclist buf;
 | 
			
		||||
 | 
			
		||||
	pids = glibtop_get_proclist(&buf, which, arg);
 | 
			
		||||
 | 
			
		||||
	printf("glibtop_get_proclist(%#llx, %llu) -> %lu processes\n",
 | 
			
		||||
	       which, arg, (unsigned long)buf.number);
 | 
			
		||||
	for (i = 0; i < buf.number; ++i) {
 | 
			
		||||
		glibtop_proc_time ptime;
 | 
			
		||||
		glibtop_proc_uid puid;
 | 
			
		||||
		glibtop_proc_state pstate;
 | 
			
		||||
 | 
			
		||||
	for (i = 0; i < buf.number; ++i)
 | 
			
		||||
		printf("%u ", pids[i]);
 | 
			
		||||
		pid_t p = pids[i];
 | 
			
		||||
 | 
			
		||||
	putchar('\n');
 | 
			
		||||
	putchar('\n');
 | 
			
		||||
		glibtop_get_proc_time(&ptime, p);
 | 
			
		||||
		glibtop_get_proc_uid(&puid, p);
 | 
			
		||||
		glibtop_get_proc_state(&pstate, p);
 | 
			
		||||
 | 
			
		||||
		/* almost equivalent to ps -x -o user,pid,time,usertime,systime,start,command */
 | 
			
		||||
		printf("%u pid=%u real=%.2f user=%.2f sys=%.2f start=%lu %s (%lx)\n",
 | 
			
		||||
		       puid.uid,
 | 
			
		||||
		       p,
 | 
			
		||||
		       (double)ptime.rtime / ptime.frequency,
 | 
			
		||||
		       (double)ptime.utime / ptime.frequency,
 | 
			
		||||
		       (double)ptime.stime / ptime.frequency,
 | 
			
		||||
		       (unsigned long)ptime.start_time,
 | 
			
		||||
		       pstate.cmd,
 | 
			
		||||
		       (long)ptime.flags);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	g_free(pids);
 | 
			
		||||
}
 | 
			
		||||
@@ -34,7 +51,6 @@ int main()
 | 
			
		||||
{
 | 
			
		||||
	glibtop_init();
 | 
			
		||||
 | 
			
		||||
	print_pids(GLIBTOP_KERN_PROC_ALL, 0);
 | 
			
		||||
	print_pids(GLIBTOP_KERN_PROC_UID, getuid());
 | 
			
		||||
 | 
			
		||||
	glibtop_close();
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifdef HAVE_CONFIG_H
 | 
			
		||||
@@ -37,23 +35,43 @@
 | 
			
		||||
 | 
			
		||||
#include <glibtop/procmap.h>
 | 
			
		||||
 | 
			
		||||
#ifdef GLIBTOP_INODEDB
 | 
			
		||||
#include <glibtop/inodedb.h>
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#include <sys/resource.h>
 | 
			
		||||
#include <sys/mman.h>
 | 
			
		||||
 | 
			
		||||
#include <fcntl.h>
 | 
			
		||||
 | 
			
		||||
#ifndef PROFILE_COUNT
 | 
			
		||||
#define PROFILE_COUNT	1
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
static void
 | 
			
		||||
try_mmap(const char *path)
 | 
			
		||||
{
 | 
			
		||||
	struct stat buf;
 | 
			
		||||
	int fd;
 | 
			
		||||
 | 
			
		||||
	if ((fd = open(path, O_RDONLY)) < 0)
 | 
			
		||||
		goto out;
 | 
			
		||||
 | 
			
		||||
	if (fstat(fd, &buf) < 0)
 | 
			
		||||
		goto out;
 | 
			
		||||
 | 
			
		||||
	if (mmap(NULL, buf.st_size, PROT_READ, MAP_PRIVATE, fd, 0) == MAP_FAILED)
 | 
			
		||||
		goto out;
 | 
			
		||||
 | 
			
		||||
	close(fd);
 | 
			
		||||
 | 
			
		||||
	return;
 | 
			
		||||
 | 
			
		||||
out:
 | 
			
		||||
	fprintf(stderr, "Failed to test mmap with '%s'\n", path);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
int
 | 
			
		||||
main (int argc, char *argv [])
 | 
			
		||||
{
 | 
			
		||||
#ifdef GLIBTOP_INODEDB
 | 
			
		||||
	glibtop_inodedb *inodedb;
 | 
			
		||||
#endif
 | 
			
		||||
	glibtop_proc_map procmap;
 | 
			
		||||
	glibtop_map_entry *maps;
 | 
			
		||||
	unsigned method, count, port, i;
 | 
			
		||||
@@ -86,12 +104,18 @@ main (int argc, char *argv [])
 | 
			
		||||
 | 
			
		||||
	glibtop_init_r (&glibtop_global_server, 0, 0);
 | 
			
		||||
 | 
			
		||||
	if ((argc != 2) || (sscanf (argv [1], "%d", (int *) &pid) != 1))
 | 
			
		||||
		g_error ("Usage: %s pid", argv [0]);
 | 
			
		||||
	if (argc == 1) {
 | 
			
		||||
		pid = getpid();
 | 
			
		||||
	}
 | 
			
		||||
	else if ((argc != 2) || (sscanf (argv [1], "%d", (int *) &pid) != 1))
 | 
			
		||||
		g_error ("Usage: %s [pid]", argv [0]);
 | 
			
		||||
 | 
			
		||||
#ifdef GLIBTOP_INODEDB
 | 
			
		||||
	inodedb = glibtop_inodedb_open (0, 0);
 | 
			
		||||
#endif
 | 
			
		||||
	if (pid == getpid()) {
 | 
			
		||||
		/* let's map something for a try */
 | 
			
		||||
		try_mmap("/etc/passwd");
 | 
			
		||||
		try_mmap("/etc/resolv.conf");
 | 
			
		||||
		try_mmap(argv[0]);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	fprintf (stderr, "Getting memory maps for pid %d.\n\n", (int) pid);
 | 
			
		||||
 | 
			
		||||
@@ -99,18 +123,13 @@ main (int argc, char *argv [])
 | 
			
		||||
 | 
			
		||||
	for (i = 0; i < procmap.number; i++) {
 | 
			
		||||
		const char *filename = NULL;
 | 
			
		||||
		char * format;
 | 
			
		||||
		unsigned device, device_major, device_minor;
 | 
			
		||||
		char perm [5];
 | 
			
		||||
 | 
			
		||||
		if (maps [i].flags & (1L << GLIBTOP_MAP_ENTRY_FILENAME))
 | 
			
		||||
			filename = maps [i].filename;
 | 
			
		||||
 | 
			
		||||
#ifdef GLIBTOP_INODEDB
 | 
			
		||||
		if (inodedb && !filename)
 | 
			
		||||
			filename = glibtop_inodedb_lookup
 | 
			
		||||
				(inodedb, maps [i].device, maps [i].inode);
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
		perm [0] = (maps [i].perm & GLIBTOP_MAP_PERM_READ) ? 'r' : '-';
 | 
			
		||||
		perm [1] = (maps [i].perm & GLIBTOP_MAP_PERM_WRITE) ? 'w' : '-';
 | 
			
		||||
		perm [2] = (maps [i].perm & GLIBTOP_MAP_PERM_EXECUTE) ? 'x' : '-';
 | 
			
		||||
@@ -121,46 +140,31 @@ main (int argc, char *argv [])
 | 
			
		||||
		device_minor = (device & 255);
 | 
			
		||||
		device_major = ((device >> 8) & 255);
 | 
			
		||||
 | 
			
		||||
		if (sizeof (void*) == 8)
 | 
			
		||||
			format = "%016lx-%016lx +%016lx (%8lu bytes mapped) - "
 | 
			
		||||
				 "%02x:%02x % 8lu - %.*s";
 | 
			
		||||
		else
 | 
			
		||||
			format = "%08lx-%08lx +%08lx (%8lu bytes mapped) - "
 | 
			
		||||
				 "%02x:%02x % 8lu - %.*s";
 | 
			
		||||
 | 
			
		||||
		fprintf (stderr, format,
 | 
			
		||||
			 (unsigned long) maps [i].start,
 | 
			
		||||
			 (unsigned long) maps [i].end,
 | 
			
		||||
			 (unsigned long) maps [i].offset,
 | 
			
		||||
			 (unsigned long) (maps [i].end - (maps [i].start + maps [i].offset)),
 | 
			
		||||
			 device_major, device_minor,
 | 
			
		||||
			 (unsigned long) maps [i].inode,
 | 
			
		||||
			 sizeof perm, perm);
 | 
			
		||||
 | 
			
		||||
		if (filename) {
 | 
			
		||||
			char *format;
 | 
			
		||||
 | 
			
		||||
			if (sizeof (void*) == 8)
 | 
			
		||||
				format = "%016lx-%016lx %016lx - "
 | 
			
		||||
					 "%02x:%02x %08lu - %4s - %s\n";
 | 
			
		||||
			else
 | 
			
		||||
				format = "%08lx-%08lx %08lx - "
 | 
			
		||||
					 "%02x:%02x %08lu - %4s - %s\n";
 | 
			
		||||
 | 
			
		||||
			fprintf (stderr, format,
 | 
			
		||||
				 (unsigned long) maps [i].start,
 | 
			
		||||
				 (unsigned long) maps [i].end,
 | 
			
		||||
				 (unsigned long) maps [i].offset,
 | 
			
		||||
				 device_major, device_minor,
 | 
			
		||||
				 (unsigned long) maps [i].inode,
 | 
			
		||||
				 perm, filename);
 | 
			
		||||
		} else {
 | 
			
		||||
			char * format;
 | 
			
		||||
 | 
			
		||||
			if (sizeof (void*) == 8)
 | 
			
		||||
				format = "%016lx-%016lx %016lx - "
 | 
			
		||||
					 "%02x:%02x %08lu - %4s\n";
 | 
			
		||||
			else
 | 
			
		||||
				format = "%08lx-%08lx %08lx - "
 | 
			
		||||
					 "%02x:%02x %08lu - %4s\n";
 | 
			
		||||
 | 
			
		||||
			fprintf (stderr, format,
 | 
			
		||||
				 (unsigned long) maps [i].start,
 | 
			
		||||
				 (unsigned long) maps [i].end,
 | 
			
		||||
				 (unsigned long) maps [i].offset,
 | 
			
		||||
				 device_major, device_minor,
 | 
			
		||||
				 (unsigned long) maps [i].inode,
 | 
			
		||||
				 perm);
 | 
			
		||||
			fprintf(stderr, " - %s", filename);
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		fputc('\n', stderr);
 | 
			
		||||
 | 
			
		||||
		g_print("smaps flags:%#llx size:%llu rss:%llu "
 | 
			
		||||
			"shared_clean:%llu shared_dirty:%llu "
 | 
			
		||||
			"private_clean:%llu private_dirty: %llu\n",
 | 
			
		||||
		g_print("smaps flags:%#llx size:%lluKiB rss:%lluKiB "
 | 
			
		||||
			"shared_clean:%lluKib shared_dirty:%lluKiB "
 | 
			
		||||
			"private_clean:%lluKiB private_dirty: %lluKiB\n",
 | 
			
		||||
			maps[i].flags,
 | 
			
		||||
			maps[i].size >> 10,
 | 
			
		||||
			maps[i].rss >> 10,
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifdef HAVE_CONFIG_H
 | 
			
		||||
@@ -44,14 +42,12 @@ output (pid_t pid)
 | 
			
		||||
	char *args;
 | 
			
		||||
	unsigned i;
 | 
			
		||||
 | 
			
		||||
#if HAVE_LIBGTOP_SMP
 | 
			
		||||
	unsigned long total;
 | 
			
		||||
	double p_total, p_utime, p_stime;
 | 
			
		||||
	double b_total, b_utime, b_stime;
 | 
			
		||||
	double s_total, s_utime, s_stime;
 | 
			
		||||
	double my_utime, my_stime;
 | 
			
		||||
	unsigned int ncpu;
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
	printf ("\n");
 | 
			
		||||
 | 
			
		||||
@@ -160,7 +156,6 @@ output (pid_t pid)
 | 
			
		||||
 | 
			
		||||
	printf ("\n");
 | 
			
		||||
 | 
			
		||||
#if HAVE_LIBGTOP_SMP
 | 
			
		||||
	ncpu = glibtop_global_server->ncpu;
 | 
			
		||||
 | 
			
		||||
	glibtop_get_proc_time (&data.proc_time, pid);
 | 
			
		||||
@@ -233,7 +228,6 @@ output (pid_t pid)
 | 
			
		||||
		s_utime * 100.0 / my_utime, s_stime * 100.0 / my_stime);
 | 
			
		||||
 | 
			
		||||
	printf ("\n");
 | 
			
		||||
#endif
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
int
 | 
			
		||||
@@ -241,7 +235,8 @@ main (int argc, char *argv [])
 | 
			
		||||
{
 | 
			
		||||
	glibtop_proclist proclist;
 | 
			
		||||
	glibtop_sysdeps sysdeps;
 | 
			
		||||
	unsigned *ptr, pid, i;
 | 
			
		||||
	unsigned i;
 | 
			
		||||
	pid_t *ptr, pid;
 | 
			
		||||
 | 
			
		||||
	setlocale (LC_ALL, "");
 | 
			
		||||
	bindtextdomain (GETTEXT_PACKAGE, GTOPLOCALEDIR);
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#include <config.h>
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifdef HAVE_CONFIG_H
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifdef HAVE_CONFIG_H
 | 
			
		||||
@@ -46,7 +44,7 @@
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#ifndef PROFILE_COUNT_EXPENSIVE
 | 
			
		||||
#define PROFILE_COUNT_EXPENSIVE		10000L
 | 
			
		||||
#define PROFILE_COUNT_EXPENSIVE		(PROFILE_COUNT / 10)
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#define ELAPSED_UTIME ((unsigned long) elapsed_utime.tv_sec * 1000000 +	(unsigned long) elapsed_utime.tv_usec)
 | 
			
		||||
@@ -71,29 +69,47 @@
 | 
			
		||||
		}							\
 | 
			
		||||
	} while (0)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
static void display_self_times(void)
 | 
			
		||||
{
 | 
			
		||||
	printf("-- Overview using `ps` --------------------"
 | 
			
		||||
	       "---------------\n");
 | 
			
		||||
	printf("-- this client is %8u ----------------"
 | 
			
		||||
	       "---------------\n", (unsigned)getpid());
 | 
			
		||||
	printf("-- this server is %8u ----------------"
 | 
			
		||||
	       "---------------\n", (unsigned)glibtop_global_server->pid);
 | 
			
		||||
	system("ps xjf | egrep 'timings|libgtop_server'");
 | 
			
		||||
	printf("-------------------------------------------"
 | 
			
		||||
	       "---------------\n");
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
int
 | 
			
		||||
main (int argc, char *argv [])
 | 
			
		||||
{
 | 
			
		||||
	glibtop_union data;
 | 
			
		||||
	unsigned c, count, *ptr;
 | 
			
		||||
	unsigned c;
 | 
			
		||||
	struct rusage total_start, total_end;
 | 
			
		||||
	struct rusage rusage_start, rusage_end;
 | 
			
		||||
	struct timeval elapsed_utime, elapsed_stime;
 | 
			
		||||
	pid_t pid;
 | 
			
		||||
 | 
			
		||||
	count = PROFILE_COUNT;
 | 
			
		||||
	pid = getpid ();
 | 
			
		||||
 | 
			
		||||
	setlocale (LC_ALL, "");
 | 
			
		||||
	bindtextdomain (GETTEXT_PACKAGE, GTOPLOCALEDIR);
 | 
			
		||||
	textdomain (GETTEXT_PACKAGE);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
	glibtop_init_r (&glibtop_global_server, 0, 0);
 | 
			
		||||
 | 
			
		||||
	display_self_times();
 | 
			
		||||
 | 
			
		||||
	printf ("%-12s (%-10s): %7s - %9s - %9s\n",
 | 
			
		||||
		"Feature", "Flags", "Count", "utime", "stime");
 | 
			
		||||
	printf ("-------------------------------------------"
 | 
			
		||||
		"---------------\n");
 | 
			
		||||
 | 
			
		||||
	glibtop_init_r (&glibtop_global_server, 0, 0);
 | 
			
		||||
 | 
			
		||||
	getrusage (RUSAGE_SELF, &total_start);
 | 
			
		||||
 | 
			
		||||
	getrusage (RUSAGE_SELF, &rusage_start);
 | 
			
		||||
@@ -186,12 +202,10 @@ main (int argc, char *argv [])
 | 
			
		||||
		(long double) ELAPSED_UTIME / PROFILE_COUNT,
 | 
			
		||||
		(long double) ELAPSED_STIME / PROFILE_COUNT);
 | 
			
		||||
 | 
			
		||||
	printf ("\n");
 | 
			
		||||
 | 
			
		||||
	getrusage (RUSAGE_SELF, &rusage_start);
 | 
			
		||||
 | 
			
		||||
	for (c = 0; c < PROFILE_COUNT_EXPENSIVE; c++) {
 | 
			
		||||
		ptr = glibtop_get_proclist (&data.proclist, 0, 0);
 | 
			
		||||
		pid_t* ptr = glibtop_get_proclist (&data.proclist, 0, 0);
 | 
			
		||||
		g_free (ptr);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
@@ -209,9 +223,26 @@ main (int argc, char *argv [])
 | 
			
		||||
		(long double) ELAPSED_UTIME / PROFILE_COUNT_EXPENSIVE,
 | 
			
		||||
		(long double) ELAPSED_STIME / PROFILE_COUNT_EXPENSIVE);
 | 
			
		||||
 | 
			
		||||
	pid = getpid ();
 | 
			
		||||
	getrusage (RUSAGE_SELF, &rusage_start);
 | 
			
		||||
 | 
			
		||||
	printf ("\n");
 | 
			
		||||
	for (c = 0; c < PROFILE_COUNT_EXPENSIVE; c++) {
 | 
			
		||||
		char** ptr = glibtop_get_netlist (&data.netlist);
 | 
			
		||||
		g_strfreev (ptr);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	getrusage (RUSAGE_SELF, &rusage_end);
 | 
			
		||||
 | 
			
		||||
	libgtop_timersub (&rusage_end.ru_utime, &rusage_start.ru_utime,
 | 
			
		||||
			  &elapsed_utime);
 | 
			
		||||
 | 
			
		||||
	libgtop_timersub (&rusage_end.ru_stime, &rusage_start.ru_stime,
 | 
			
		||||
			  &elapsed_stime);
 | 
			
		||||
 | 
			
		||||
	printf ("Netlist      (0x%08lx): %7lu - %9.2Lf - %9.2Lf\n",
 | 
			
		||||
		(unsigned long) data.proclist.flags,
 | 
			
		||||
		PROFILE_COUNT_EXPENSIVE,
 | 
			
		||||
		(long double) ELAPSED_UTIME / PROFILE_COUNT_EXPENSIVE,
 | 
			
		||||
		(long double) ELAPSED_STIME / PROFILE_COUNT_EXPENSIVE);
 | 
			
		||||
 | 
			
		||||
	getrusage (RUSAGE_SELF, &rusage_start);
 | 
			
		||||
 | 
			
		||||
@@ -269,6 +300,27 @@ main (int argc, char *argv [])
 | 
			
		||||
 | 
			
		||||
	getrusage (RUSAGE_SELF, &rusage_start);
 | 
			
		||||
 | 
			
		||||
	for (c = 0; c < PROFILE_COUNT_EXPENSIVE; c++) {
 | 
			
		||||
		glibtop_map_entry* entries;
 | 
			
		||||
		entries = glibtop_get_proc_map (&data.proc_map, pid);
 | 
			
		||||
		g_free (entries);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	getrusage (RUSAGE_SELF, &rusage_end);
 | 
			
		||||
 | 
			
		||||
	libgtop_timersub (&rusage_end.ru_utime, &rusage_start.ru_utime,
 | 
			
		||||
			  &elapsed_utime);
 | 
			
		||||
 | 
			
		||||
	libgtop_timersub (&rusage_end.ru_stime, &rusage_start.ru_stime,
 | 
			
		||||
			  &elapsed_stime);
 | 
			
		||||
 | 
			
		||||
	printf ("Proc_Map     (0x%08lx): %7lu - %9.2Lf - %9.2Lf\n",
 | 
			
		||||
		(unsigned long) data.proc_map.flags, PROFILE_COUNT_EXPENSIVE,
 | 
			
		||||
		(long double) ELAPSED_UTIME / PROFILE_COUNT_EXPENSIVE,
 | 
			
		||||
		(long double) ELAPSED_STIME / PROFILE_COUNT_EXPENSIVE);
 | 
			
		||||
 | 
			
		||||
	getrusage (RUSAGE_SELF, &rusage_start);
 | 
			
		||||
 | 
			
		||||
	for (c = 0; c < PROFILE_COUNT; c++)
 | 
			
		||||
		glibtop_get_proc_segment (&data.proc_segment, pid);
 | 
			
		||||
 | 
			
		||||
@@ -287,6 +339,27 @@ main (int argc, char *argv [])
 | 
			
		||||
 | 
			
		||||
	getrusage (RUSAGE_SELF, &rusage_start);
 | 
			
		||||
 | 
			
		||||
	for (c = 0; c < PROFILE_COUNT; c++) {
 | 
			
		||||
		char** argv;
 | 
			
		||||
		argv = glibtop_get_proc_argv (&data.proc_args, pid, 0);
 | 
			
		||||
		g_strfreev(argv);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	getrusage (RUSAGE_SELF, &rusage_end);
 | 
			
		||||
 | 
			
		||||
	libgtop_timersub (&rusage_end.ru_utime, &rusage_start.ru_utime,
 | 
			
		||||
			  &elapsed_utime);
 | 
			
		||||
 | 
			
		||||
	libgtop_timersub (&rusage_end.ru_stime, &rusage_start.ru_stime,
 | 
			
		||||
			  &elapsed_stime);
 | 
			
		||||
 | 
			
		||||
	printf ("Proc_Args    (0x%08lx): %7lu - %9.2Lf - %9.2Lf\n",
 | 
			
		||||
		(unsigned long) data.proc_args.flags, PROFILE_COUNT,
 | 
			
		||||
		(long double) ELAPSED_UTIME / PROFILE_COUNT,
 | 
			
		||||
		(long double) ELAPSED_STIME / PROFILE_COUNT);
 | 
			
		||||
 | 
			
		||||
	getrusage (RUSAGE_SELF, &rusage_start);
 | 
			
		||||
 | 
			
		||||
	for (c = 0; c < PROFILE_COUNT; c++)
 | 
			
		||||
		glibtop_get_proc_time (&data.proc_time, pid);
 | 
			
		||||
 | 
			
		||||
@@ -356,6 +429,8 @@ main (int argc, char *argv [])
 | 
			
		||||
	printf ("All timings are in clock ticks "
 | 
			
		||||
		"(1000000 ticks per second).\n\n");
 | 
			
		||||
 | 
			
		||||
	display_self_times();
 | 
			
		||||
 | 
			
		||||
	glibtop_close ();
 | 
			
		||||
 | 
			
		||||
	exit (0);
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										35
									
								
								examples/wd.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								examples/wd.c
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,35 @@
 | 
			
		||||
#include <glibtop.h>
 | 
			
		||||
#include <glibtop/procwd.h>
 | 
			
		||||
 | 
			
		||||
#include <glib.h>
 | 
			
		||||
#include <unistd.h>
 | 
			
		||||
 | 
			
		||||
int main(int argc, char **argv)
 | 
			
		||||
{
 | 
			
		||||
	pid_t pid;
 | 
			
		||||
	glibtop_proc_wd buf;
 | 
			
		||||
	char **dirs, **dir;
 | 
			
		||||
 | 
			
		||||
	if (argc < 2 || !(pid = strtoul(argv[1], NULL, 0)))
 | 
			
		||||
		pid = getpid();
 | 
			
		||||
 | 
			
		||||
	glibtop_init();
 | 
			
		||||
 | 
			
		||||
	dirs = glibtop_get_proc_wd(&buf, pid);
 | 
			
		||||
 | 
			
		||||
	g_print("Process %u:\n"
 | 
			
		||||
		" - root: '%s'\n"
 | 
			
		||||
		" - exe: '%s'\n"
 | 
			
		||||
		" - working directories:\n",
 | 
			
		||||
		(unsigned)pid, buf.root, buf.exe);
 | 
			
		||||
 | 
			
		||||
	for (dir = dirs; *dir; ++dir)
 | 
			
		||||
		g_print("   - '%s'\n", *dir);
 | 
			
		||||
 | 
			
		||||
	g_strfreev(dirs);
 | 
			
		||||
 | 
			
		||||
	glibtop_close();
 | 
			
		||||
 | 
			
		||||
	return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										50
									
								
								features.def
									
									
									
									
									
								
							
							
						
						
									
										50
									
								
								features.def
									
									
									
									
									
								
							@@ -1,25 +1,27 @@
 | 
			
		||||
void|cpu|ulong(total,user,nice,sys,idle,iowait,irq,softirq,frequency,xcpu_total[4],xcpu_user[4],xcpu_nice[4],xcpu_sys[4],xcpu_idle[4],xcpu_iowait[4],xcpu_irq[4],xcpu_softirq[4])
 | 
			
		||||
void|mem|ulong(total,used,free,shared,buffer,cached,user,locked)
 | 
			
		||||
void|swap|ulong(total,used,free,pagein,pageout)
 | 
			
		||||
void|uptime|double(uptime,idletime)
 | 
			
		||||
void|loadavg|double(loadavg[3]):ulong(nr_running,nr_tasks,last_pid)
 | 
			
		||||
void|shm_limits|ulong(shmmax,shmmin,shmmni,shmseg,shmall)
 | 
			
		||||
void|msg_limits|ulong(msgpool,msgmap,msgmax,msgmnb,msgmni,msgssz,msgtql)
 | 
			
		||||
void|sem_limits|ulong(semmap,semmni,semmns,semmnu,semmsl,semopm,semume,semusz,semvmx,semaem)
 | 
			
		||||
unsigned *|proclist|ulong(number,size,total)|long(which,arg)
 | 
			
		||||
void|proc_state|str(cmd):char(state):ulong(uid,gid)|pid_t(pid)
 | 
			
		||||
void|proc_uid|long(uid,euid,gid,egid,pid,ppid,pgrp,session,tty,tpgid,priority,nice)|pid_t(pid)
 | 
			
		||||
void|proc_mem|long(size,vsize,resident,share,rss,rss_rlim)|pid_t(pid)
 | 
			
		||||
void|proc_time|long(start_time,rtime,utime,stime,cutime,cstime,timeout,it_real_value,frequency,xcpu_utime[4],xcpu_stime[4])|pid_t(pid)
 | 
			
		||||
void|proc_signal|ulong(signal[2],blocked[2],sigignore[2],sigcatch[2])|pid_t(pid)
 | 
			
		||||
void|proc_kernel|ulong(k_flags,min_flt,maj_flt,cmin_flt,cmaj_flt,kstk_esp,kstk_eip,nwchan):str(wchan)|pid_t(pid)
 | 
			
		||||
void|proc_segment|ulong(text_rss,shlib_rss,data_rss,stack_rss,dirty_size,start_code,end_code,start_stack)|pid_t(pid)
 | 
			
		||||
char *|proc_args|ulong(size)|pid_t(pid):unsigned(max_len)
 | 
			
		||||
glibtop_map_entry *|proc_map|ulong(number,size,total)|pid_t(pid)
 | 
			
		||||
glibtop_open_files_entry *|proc_open_files|ulong(number)|pid_t(pid)
 | 
			
		||||
glibtop_mountentry *|@mountlist|ulong(number,size,total)|int(all_fs)
 | 
			
		||||
void|@fsusage|ulong(blocks,bfree,bavail,files,ffree)|string|mount_dir
 | 
			
		||||
void|netload|ulong(if_flags,mtu,subnet,address,packets_in,packets_out,packets_total,bytes_in,bytes_out,bytes_total,errors_in,errors_out,errors_total,collisions)|string|interface
 | 
			
		||||
void|ppp|ulong(state,bytes_in,bytes_out)|ushort(device)
 | 
			
		||||
char **|netlist|unsigned(number)
 | 
			
		||||
void|cpu
 | 
			
		||||
void|mem
 | 
			
		||||
void|swap
 | 
			
		||||
void|uptime
 | 
			
		||||
void|loadavg
 | 
			
		||||
void|shm_limits
 | 
			
		||||
void|msg_limits
 | 
			
		||||
void|sem_limits
 | 
			
		||||
pid_t*|proclist|long(which,arg)
 | 
			
		||||
void|proc_state|pid_t(pid)
 | 
			
		||||
void|proc_uid|pid_t(pid)
 | 
			
		||||
void|proc_mem|pid_t(pid)
 | 
			
		||||
void|proc_time|pid_t(pid)
 | 
			
		||||
void|proc_signal|pid_t(pid)
 | 
			
		||||
void|proc_kernel|pid_t(pid)
 | 
			
		||||
void|proc_segment|pid_t(pid)
 | 
			
		||||
char *|proc_args|pid_t(pid):unsigned(max_len)
 | 
			
		||||
glibtop_map_entry *|proc_map|pid_t(pid)
 | 
			
		||||
glibtop_open_files_entry *|proc_open_files|pid_t(pid)
 | 
			
		||||
glibtop_mountentry *|@mountlist|int(all_fs)
 | 
			
		||||
void|@fsusage|string|mount_dir
 | 
			
		||||
void|netload|string|interface
 | 
			
		||||
void|ppp|ushort(device)
 | 
			
		||||
char **|netlist
 | 
			
		||||
char **|proc_wd|pid_t(pid)
 | 
			
		||||
guint16*|proc_affinity|pid_t(pid)
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										58
									
								
								glibtop.h
									
									
									
									
									
								
							
							
						
						
									
										58
									
								
								glibtop.h
									
									
									
									
									
								
							@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,14 +15,24 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_H__
 | 
			
		||||
#define __GLIBTOP_H__
 | 
			
		||||
 | 
			
		||||
/* for pid_t, uid_t, gid_t */
 | 
			
		||||
#include <sys/types.h>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#include <glib.h>
 | 
			
		||||
#include <glib-object.h>
 | 
			
		||||
 | 
			
		||||
G_BEGIN_DECLS
 | 
			
		||||
 | 
			
		||||
typedef struct _glibtop		glibtop;
 | 
			
		||||
typedef struct _glibtop_machine	glibtop_machine;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  LIBGTOP_CHECK_VERSION
 | 
			
		||||
@@ -52,10 +60,6 @@ LIBGTOP_MICRO_VERSION >= (micro)))
 | 
			
		||||
 | 
			
		||||
#include <glibtop_server.h>
 | 
			
		||||
 | 
			
		||||
#ifdef HAVE_GLIBTOP_MACHINE_H
 | 
			
		||||
#include <glibtop_machine.h>
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#ifndef GLIBTOP_MOUNTENTRY_LEN
 | 
			
		||||
#define GLIBTOP_MOUNTENTRY_LEN	79
 | 
			
		||||
#endif
 | 
			
		||||
@@ -65,14 +69,12 @@ LIBGTOP_MICRO_VERSION >= (micro)))
 | 
			
		||||
 | 
			
		||||
#include <glibtop/close.h>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
struct _glibtop
 | 
			
		||||
{
 | 
			
		||||
	unsigned flags;
 | 
			
		||||
	unsigned method;		/* Server Method */
 | 
			
		||||
	unsigned error_method;		/* Error Method */
 | 
			
		||||
#ifdef HAVE_GLIBTOP_MACHINE_H
 | 
			
		||||
	glibtop_machine machine;	/* Machine dependent data */
 | 
			
		||||
#endif
 | 
			
		||||
	int input [2];			/* Pipe client <- server */
 | 
			
		||||
	int output [2];			/* Pipe client -> server */
 | 
			
		||||
	int socket;			/* Accepted connection of a socket */
 | 
			
		||||
@@ -89,23 +91,57 @@ struct _glibtop
 | 
			
		||||
	glibtop_sysdeps sysdeps;	/* Detailed feature list */
 | 
			
		||||
	glibtop_sysdeps required;	/* Required feature list */
 | 
			
		||||
	pid_t pid;			/* PID of the server */
 | 
			
		||||
 | 
			
		||||
	uid_t uid;
 | 
			
		||||
	uid_t euid;
 | 
			
		||||
	gid_t gid;
 | 
			
		||||
	gid_t egid;
 | 
			
		||||
 | 
			
		||||
	glibtop_machine *machine;	/* Machine dependent data */
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
extern glibtop *glibtop_global_server;
 | 
			
		||||
 | 
			
		||||
extern const unsigned long glibtop_server_features;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_init:
 | 
			
		||||
 *
 | 
			
		||||
 * Returns: (transfer none):
 | 
			
		||||
 */
 | 
			
		||||
glibtop *
 | 
			
		||||
glibtop_init (void);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_init_r:
 | 
			
		||||
 * @server_ptr: (out):
 | 
			
		||||
 * @features:
 | 
			
		||||
 * @flags:
 | 
			
		||||
 *
 | 
			
		||||
 * Returns: (transfer none):
 | 
			
		||||
 */
 | 
			
		||||
glibtop *
 | 
			
		||||
glibtop_init_r (glibtop **server_ptr,
 | 
			
		||||
		unsigned long features,
 | 
			
		||||
		unsigned flags);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_init_s:
 | 
			
		||||
 * @server_ptr: (out):
 | 
			
		||||
 * @features:
 | 
			
		||||
 * @flags:
 | 
			
		||||
 *
 | 
			
		||||
 * Returns: (transfer none):
 | 
			
		||||
 */
 | 
			
		||||
glibtop *
 | 
			
		||||
glibtop_init_s (glibtop **server_ptr,
 | 
			
		||||
		unsigned long features,
 | 
			
		||||
		unsigned flags);
 | 
			
		||||
 | 
			
		||||
GType     glibtop_get_type (void) G_GNUC_CONST;
 | 
			
		||||
 | 
			
		||||
G_END_DECLS
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
 
 | 
			
		||||
@@ -1,2 +0,0 @@
 | 
			
		||||
Makefile
 | 
			
		||||
Makefile.in
 | 
			
		||||
@@ -1,2 +0,0 @@
 | 
			
		||||
Makefile
 | 
			
		||||
Makefile.in
 | 
			
		||||
@@ -2,12 +2,15 @@ glibtopdir		= $(includedir)/libgtop-2.0/glibtop
 | 
			
		||||
 | 
			
		||||
glibtop_HEADERS		= close.h loadavg.h prockernel.h procstate.h \
 | 
			
		||||
			  sem_limits.h uptime.h command.h mem.h proclist.h \
 | 
			
		||||
			  proctime.h shm_limits.h version.h cpu.h msg_limits.h \
 | 
			
		||||
			  proctime.h shm_limits.h cpu.h msg_limits.h \
 | 
			
		||||
			  procmem.h procuid.h swap.h \
 | 
			
		||||
			  procsegment.h sysdeps.h global.h \
 | 
			
		||||
			  procsignal.h union.h gnuserv.h \
 | 
			
		||||
			  parameter.h mountlist.h fsusage.h procmap.h signal.h \
 | 
			
		||||
			  inodedb.h sysinfo.h ppp.h procargs.h netload.h \
 | 
			
		||||
			  sysinfo.h ppp.h procargs.h netload.h \
 | 
			
		||||
			  procwd.h procaffinity.h \
 | 
			
		||||
			  netlist.h procopenfiles.h open.h
 | 
			
		||||
 | 
			
		||||
noinst_HEADERS		= error.h write.h read_data.h read.h init_hooks.h
 | 
			
		||||
noinst_HEADERS		= error.h write.h read_data.h read.h init_hooks.h machine.h \
 | 
			
		||||
			  version.h
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,5 @@
 | 
			
		||||
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 4 -*- */
 | 
			
		||||
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
@@AUTOGEN_COMMENT@@
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
@@ -21,8 +19,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_CALL_VECTOR_H__
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_CLOSE_H__
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_COMMAND_H__
 | 
			
		||||
@@ -59,8 +57,10 @@ G_BEGIN_DECLS
 | 
			
		||||
#define GLIBTOP_CMND_PPP		23
 | 
			
		||||
#define GLIBTOP_CMND_NETLIST		24
 | 
			
		||||
#define GLIBTOP_CMND_PROC_OPEN_FILES	25
 | 
			
		||||
#define GLIBTOP_CMND_PROC_WD		26
 | 
			
		||||
#define GLIBTOP_CMND_PROC_AFFINITY	27
 | 
			
		||||
 | 
			
		||||
#define GLIBTOP_MAX_CMND		26
 | 
			
		||||
#define GLIBTOP_MAX_CMND		28
 | 
			
		||||
 | 
			
		||||
#define _GLIBTOP_PARAM_SIZE		16
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_CPU_H__
 | 
			
		||||
@@ -56,7 +54,7 @@ G_BEGIN_DECLS
 | 
			
		||||
   Yes we are :)
 | 
			
		||||
   Nobody should really be using more than 32 processors.
 | 
			
		||||
*/
 | 
			
		||||
#define GLIBTOP_NCPU		32
 | 
			
		||||
#define GLIBTOP_NCPU		1024
 | 
			
		||||
 | 
			
		||||
typedef struct _glibtop_cpu	glibtop_cpu;
 | 
			
		||||
 | 
			
		||||
@@ -94,10 +92,10 @@ void glibtop_get_cpu(glibtop_cpu *buf);
 | 
			
		||||
void glibtop_get_cpu_l (glibtop *server, glibtop_cpu *buf);
 | 
			
		||||
 | 
			
		||||
#if GLIBTOP_SUID_CPU
 | 
			
		||||
void glibtop_init_cpu_p (glibtop *server);
 | 
			
		||||
void _glibtop_init_cpu_p (glibtop *server);
 | 
			
		||||
void glibtop_get_cpu_p (glibtop *server, glibtop_cpu *buf);
 | 
			
		||||
#else
 | 
			
		||||
void glibtop_init_cpu_s (glibtop *server);
 | 
			
		||||
void _glibtop_init_cpu_s (glibtop *server);
 | 
			
		||||
void glibtop_get_cpu_s (glibtop *server, glibtop_cpu *buf);
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@@ -33,20 +31,32 @@
 | 
			
		||||
 | 
			
		||||
G_BEGIN_DECLS
 | 
			
		||||
 | 
			
		||||
void glibtop_error_vr (glibtop *server, const char *format, va_list args) G_GNUC_INTERNAL G_GNUC_NORETURN;
 | 
			
		||||
void glibtop_warn_vr (glibtop *server, const char *format, va_list args) G_GNUC_INTERNAL;
 | 
			
		||||
void glibtop_error_io_vr (glibtop *server, const char *format, int, va_list args) G_GNUC_INTERNAL G_GNUC_NORETURN;
 | 
			
		||||
void glibtop_warn_io_vr (glibtop *server, const char *format, int, va_list args) G_GNUC_INTERNAL;
 | 
			
		||||
void glibtop_error_vr (glibtop *server, const char *format, va_list args) G_GNUC_NORETURN;
 | 
			
		||||
void glibtop_warn_vr (glibtop *server, const char *format, va_list args);
 | 
			
		||||
void glibtop_error_io_vr (glibtop *server, const char *format, int, va_list args) G_GNUC_NORETURN;
 | 
			
		||||
void glibtop_warn_io_vr (glibtop *server, const char *format, int, va_list args);
 | 
			
		||||
 | 
			
		||||
void glibtop_error_r (glibtop *server, const char *format, ...) G_GNUC_INTERNAL G_GNUC_PRINTF(2, 3) G_GNUC_NORETURN;
 | 
			
		||||
void glibtop_warn_r (glibtop *server, const char *format, ...) G_GNUC_INTERNAL G_GNUC_PRINTF(2, 3);
 | 
			
		||||
void glibtop_error_io_r (glibtop *server, const char *format, ...) G_GNUC_INTERNAL G_GNUC_PRINTF(2, 3) G_GNUC_NORETURN;
 | 
			
		||||
void glibtop_warn_io_r (glibtop *server, const char *format, ...) G_GNUC_INTERNAL G_GNUC_PRINTF(2, 3);
 | 
			
		||||
void glibtop_error_r (glibtop *server, const char *format, ...) G_GNUC_PRINTF(2, 3) G_GNUC_NORETURN;
 | 
			
		||||
void glibtop_warn_r (glibtop *server, const char *format, ...) G_GNUC_PRINTF(2, 3);
 | 
			
		||||
void glibtop_error_io_r (glibtop *server, const char *format, ...) G_GNUC_PRINTF(2, 3) G_GNUC_NORETURN;
 | 
			
		||||
void glibtop_warn_io_r (glibtop *server, const char *format, ...) G_GNUC_PRINTF(2, 3);
 | 
			
		||||
 | 
			
		||||
void glibtop_error (const char *format, ...) G_GNUC_INTERNAL G_GNUC_PRINTF(1, 2) G_GNUC_NORETURN;
 | 
			
		||||
void glibtop_warn (const char *format, ...) G_GNUC_INTERNAL G_GNUC_PRINTF(1, 2);
 | 
			
		||||
void glibtop_error_io (const char *format, ...) G_GNUC_INTERNAL G_GNUC_PRINTF(1, 2) G_GNUC_NORETURN;
 | 
			
		||||
void glibtop_warn_io (const char *format, ...) G_GNUC_INTERNAL G_GNUC_PRINTF(1, 2);
 | 
			
		||||
void glibtop_error (const char *format, ...) G_GNUC_PRINTF(1, 2) G_GNUC_NORETURN;
 | 
			
		||||
void glibtop_warn (const char *format, ...) G_GNUC_PRINTF(1, 2);
 | 
			
		||||
void glibtop_error_io (const char *format, ...) G_GNUC_PRINTF(1, 2) G_GNUC_NORETURN;
 | 
			
		||||
void glibtop_warn_io (const char *format, ...) G_GNUC_PRINTF(1, 2);
 | 
			
		||||
 | 
			
		||||
/* FIXME: C99 */
 | 
			
		||||
#define glibtop_debug_r(server, fmt, ...)				\
 | 
			
		||||
	G_STMT_START {							\
 | 
			
		||||
	if (LIBGTOP_ENABLE_DEBUG)					\
 | 
			
		||||
		glibtop_debug_r_real(server, "%s:%d %s(): " fmt, __FILE__, __LINE__, __func__, ##__VA_ARGS__); \
 | 
			
		||||
	} G_STMT_END
 | 
			
		||||
 | 
			
		||||
#define glibtop_debug(...) glibtop_debug_r(glibtop_global_server, __VA_ARGS__)
 | 
			
		||||
 | 
			
		||||
void glibtop_debug_vr (glibtop *server, const char *format, va_list args);
 | 
			
		||||
void glibtop_debug_r_real (glibtop *server, const char *format, ...) G_GNUC_PRINTF(2, 3);
 | 
			
		||||
 | 
			
		||||
G_END_DECLS
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
 | 
			
		||||
   Contributed by Martin Baulig <martin@home-of-linux.org>, April 1998.
 | 
			
		||||
@@ -16,8 +14,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_FSUSAGE_H__
 | 
			
		||||
 
 | 
			
		||||
@@ -1,70 +0,0 @@
 | 
			
		||||
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 4 -*- */
 | 
			
		||||
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 2.0.
 | 
			
		||||
 | 
			
		||||
   Contributed by Martin Baulig <martin@home-of-linux.org>, April 1998.
 | 
			
		||||
 | 
			
		||||
   LibGTop is free software; you can redistribute it and/or modify it
 | 
			
		||||
   under the terms of the GNU General Public License as published by
 | 
			
		||||
   the Free Software Foundation; either version 2 of the License,
 | 
			
		||||
   or (at your option) any later version.
 | 
			
		||||
 | 
			
		||||
   LibGTop is distributed in the hope that it will be useful, but WITHOUT
 | 
			
		||||
   ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 | 
			
		||||
   FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
 | 
			
		||||
   for more details.
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_SERVER_H__
 | 
			
		||||
#define __GLIBTOP_SERVER_H__
 | 
			
		||||
 | 
			
		||||
#include <glibtop/global.h>
 | 
			
		||||
#include <glibtop/sysdeps.h>
 | 
			
		||||
 | 
			
		||||
G_BEGIN_DECLS
 | 
			
		||||
 | 
			
		||||
typedef struct _glibtop_server		glibtop_server;
 | 
			
		||||
typedef struct _glibtop_server_info	glibtop_server_info;
 | 
			
		||||
 | 
			
		||||
typedef struct _glibtop_closure		glibtop_closure;
 | 
			
		||||
 | 
			
		||||
struct _glibtop_server_info
 | 
			
		||||
{
 | 
			
		||||
    int ncpu;			/* Number of CPUs, zero if single-processor */
 | 
			
		||||
    unsigned long features;	/* Server is required for this features */
 | 
			
		||||
    glibtop_sysdeps sysdeps;	/* Detailed feature list */
 | 
			
		||||
    glibtop_sysdeps required;	/* Required feature list */
 | 
			
		||||
    glibtop_sysdeps wanted;	/* We only want this features */
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
struct	_glibtop_server
 | 
			
		||||
{
 | 
			
		||||
    glibtop_server_info *info;
 | 
			
		||||
 | 
			
		||||
    int refcount;
 | 
			
		||||
    unsigned flags;
 | 
			
		||||
    const char *name;
 | 
			
		||||
 | 
			
		||||
    void *_priv;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
glibtop_server *
 | 
			
		||||
glibtop_server_new (void);
 | 
			
		||||
 | 
			
		||||
void
 | 
			
		||||
glibtop_server_ref (glibtop_server *server);
 | 
			
		||||
 | 
			
		||||
void
 | 
			
		||||
glibtop_server_unref (glibtop_server *server);
 | 
			
		||||
 | 
			
		||||
G_END_DECLS
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_GLOBAL_H__
 | 
			
		||||
 
 | 
			
		||||
@@ -3,9 +3,13 @@
 | 
			
		||||
 | 
			
		||||
#include <glibtop.h>
 | 
			
		||||
 | 
			
		||||
typedef void (*glibtop_init_func_t)(glibtop *);
 | 
			
		||||
G_BEGIN_DECLS
 | 
			
		||||
 | 
			
		||||
extern const glibtop_init_func_t _glibtop_init_hook_s[];
 | 
			
		||||
extern const glibtop_init_func_t _glibtop_init_hook_p[];
 | 
			
		||||
typedef void (*_glibtop_init_func_t)(glibtop *);
 | 
			
		||||
 | 
			
		||||
extern const _glibtop_init_func_t _glibtop_init_hook_s[];
 | 
			
		||||
extern const _glibtop_init_func_t _glibtop_init_hook_p[];
 | 
			
		||||
 | 
			
		||||
G_END_DECLS
 | 
			
		||||
 | 
			
		||||
#endif /* H_LIBGTOP_INIT_HOOKS_1122955666 */
 | 
			
		||||
 
 | 
			
		||||
@@ -1,67 +0,0 @@
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
   Contributed by Martin Baulig <martin@home-of-linux.org>, April 1998.
 | 
			
		||||
 | 
			
		||||
   LibGTop is free software; you can redistribute it and/or modify it
 | 
			
		||||
   under the terms of the GNU General Public License as published by
 | 
			
		||||
   the Free Software Foundation; either version 2 of the License,
 | 
			
		||||
   or (at your option) any later version.
 | 
			
		||||
 | 
			
		||||
   LibGTop is distributed in the hope that it will be useful, but WITHOUT
 | 
			
		||||
   ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 | 
			
		||||
   FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
 | 
			
		||||
   for more details.
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_INODEDB_H__
 | 
			
		||||
#define __GLIBTOP_INODEDB_H__
 | 
			
		||||
 | 
			
		||||
#include <glibtop.h>
 | 
			
		||||
#include <gdbm.h>
 | 
			
		||||
 | 
			
		||||
#define GLIBTOP_INODEDB_SYSTEM		1
 | 
			
		||||
#define GLIBTOP_INODEDB_USER		2
 | 
			
		||||
#define GLIBTOP_INODEDB_CACHE		4
 | 
			
		||||
 | 
			
		||||
#define GLIBTOP_INODEDB_ALL		7
 | 
			
		||||
 | 
			
		||||
G_BEGIN_DECLS
 | 
			
		||||
 | 
			
		||||
typedef struct _glibtop_inodedb		glibtop_inodedb;
 | 
			
		||||
 | 
			
		||||
typedef struct _glibtop_inodedb_key	glibtop_inodedb_key;
 | 
			
		||||
 | 
			
		||||
struct _glibtop_inodedb_key
 | 
			
		||||
{
 | 
			
		||||
	guint64 device, inode;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
struct _glibtop_inodedb
 | 
			
		||||
{
 | 
			
		||||
	GDBM_FILE system_dbf, user_dbf;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
#define glibtop_inodedb_open(p1,p2)	glibtop_inodedb_open_s(glibtop_global_server, p1, p2)
 | 
			
		||||
#define glibtop_inodedb_lookup(p1,p2,p3) glibtop_inodedb_lookup_s(glibtop_global_server, p1, p2, p3)
 | 
			
		||||
#define glibtop_inodedb_close(p1)	glibtop_inodedb_close_s(glibtop_global_server)
 | 
			
		||||
 | 
			
		||||
glibtop_inodedb *
 | 
			
		||||
glibtop_inodedb_open_s (glibtop *server, unsigned databases, unsigned long cache_size);
 | 
			
		||||
 | 
			
		||||
const char *
 | 
			
		||||
glibtop_inodedb_lookup_s (glibtop *server,
 | 
			
		||||
			  glibtop_inodedb *inodedb,
 | 
			
		||||
			  guint64 device, guint64 inode);
 | 
			
		||||
 | 
			
		||||
void
 | 
			
		||||
glibtop_inodedb_close_s (glibtop *server, glibtop_inodedb *inodedb);
 | 
			
		||||
 | 
			
		||||
G_END_DECLS
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_LOADAVG_H__
 | 
			
		||||
@@ -58,10 +56,10 @@ void glibtop_get_loadavg(glibtop_loadavg *buf);
 | 
			
		||||
void glibtop_get_loadavg_l (glibtop *server, glibtop_loadavg *buf);
 | 
			
		||||
 | 
			
		||||
#if GLIBTOP_SUID_LOADAVG
 | 
			
		||||
void glibtop_init_loadavg_p (glibtop *server);
 | 
			
		||||
void _glibtop_init_loadavg_p (glibtop *server);
 | 
			
		||||
void glibtop_get_loadavg_p (glibtop *server, glibtop_loadavg *buf);
 | 
			
		||||
#else
 | 
			
		||||
void glibtop_init_loadavg_s (glibtop *server);
 | 
			
		||||
void _glibtop_init_loadavg_s (glibtop *server);
 | 
			
		||||
void glibtop_get_loadavg_s (glibtop *server, glibtop_loadavg *buf);
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										22
									
								
								include/glibtop/machine.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								include/glibtop/machine.h
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,22 @@
 | 
			
		||||
#ifndef GLIBTOP_SYSDEPS_COMMON_MACHINE_H_1437506041
 | 
			
		||||
#define GLIBTOP_SYSDEPS_COMMON_MACHINE_H_1437506041
 | 
			
		||||
 | 
			
		||||
#include <glib.h>
 | 
			
		||||
#include <glibtop_machine.h>
 | 
			
		||||
 | 
			
		||||
/* private */
 | 
			
		||||
static inline void
 | 
			
		||||
glibtop_machine_new(glibtop *server)
 | 
			
		||||
{
 | 
			
		||||
	server->machine = g_new0(glibtop_machine, 1);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/* private */
 | 
			
		||||
static inline void
 | 
			
		||||
glibtop_machine_delete(glibtop *server)
 | 
			
		||||
{
 | 
			
		||||
	g_free(server->machine);
 | 
			
		||||
	server->machine = NULL;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#endif /* GLIBTOP_SYSDEPS_COMMON_MACHINE_H_1437506041 */
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_MEM_H__
 | 
			
		||||
@@ -66,10 +64,10 @@ void glibtop_get_mem(glibtop_mem *buf);
 | 
			
		||||
void glibtop_get_mem_l (glibtop *server, glibtop_mem *buf);
 | 
			
		||||
 | 
			
		||||
#if GLIBTOP_SUID_MEM
 | 
			
		||||
void glibtop_init_mem_p (glibtop *server);
 | 
			
		||||
void _glibtop_init_mem_p (glibtop *server);
 | 
			
		||||
void glibtop_get_mem_p (glibtop *server, glibtop_mem *buf);
 | 
			
		||||
#else
 | 
			
		||||
void glibtop_init_mem_s (glibtop *server);
 | 
			
		||||
void _glibtop_init_mem_s (glibtop *server);
 | 
			
		||||
void glibtop_get_mem_s (glibtop *server, glibtop_mem *buf);
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_MOUNTLIST_H__
 | 
			
		||||
@@ -55,6 +53,38 @@ struct _glibtop_mountlist
 | 
			
		||||
	guint64 size;			/* GLIBTOP_MOUNTLIST_SIZE	*/
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_get_mountlist:
 | 
			
		||||
 * @buf:
 | 
			
		||||
 * @all_fs:
 | 
			
		||||
 *
 | 
			
		||||
 * Returns: (transfer full):
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_get_mountlist_r:
 | 
			
		||||
 * @buf: (out):
 | 
			
		||||
 * @all_fs:
 | 
			
		||||
 *
 | 
			
		||||
 * Returns: (transfer none):
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_get_mountlist_s:
 | 
			
		||||
 * @buf: (out):
 | 
			
		||||
 * @all_fs:
 | 
			
		||||
 *
 | 
			
		||||
 * Returns: (transfer none):
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_get_mountlist_l:
 | 
			
		||||
 * @buf: (out):
 | 
			
		||||
 * @all_fs:
 | 
			
		||||
 *
 | 
			
		||||
 * Returns: (transfer none):
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
glibtop_mountentry *
 | 
			
		||||
glibtop_get_mountlist(glibtop_mountlist *buf, int all_fs);
 | 
			
		||||
 | 
			
		||||
@@ -66,6 +96,8 @@ glibtop_get_mountlist_l (glibtop *server, glibtop_mountlist *buf, int all_fs);
 | 
			
		||||
glibtop_mountentry *
 | 
			
		||||
glibtop_get_mountlist_s (glibtop *server, glibtop_mountlist *buf, int all_fs);
 | 
			
		||||
 | 
			
		||||
GType     glibtop_mountlist_get_type (void) G_GNUC_CONST;
 | 
			
		||||
GType     glibtop_mountentry_get_type (void) G_GNUC_CONST;
 | 
			
		||||
 | 
			
		||||
G_END_DECLS
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_MSG_LIMITS_H__
 | 
			
		||||
@@ -64,10 +62,10 @@ void glibtop_get_msg_limits(glibtop_msg_limits *buf);
 | 
			
		||||
void glibtop_get_msg_limits_l (glibtop *server, glibtop_msg_limits *buf);
 | 
			
		||||
 | 
			
		||||
#if GLIBTOP_SUID_MSG_LIMITS
 | 
			
		||||
void glibtop_init_msg_limits_p (glibtop *server);
 | 
			
		||||
void _glibtop_init_msg_limits_p (glibtop *server);
 | 
			
		||||
void glibtop_get_msg_limits_p (glibtop *server, glibtop_msg_limits *buf);
 | 
			
		||||
#else
 | 
			
		||||
void glibtop_init_msg_limits_s (glibtop *server);
 | 
			
		||||
void _glibtop_init_msg_limits_s (glibtop *server);
 | 
			
		||||
void glibtop_get_msg_limits_s (glibtop *server, glibtop_msg_limits *buf);
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -13,8 +13,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_NETLIST_H__
 | 
			
		||||
@@ -31,12 +31,23 @@ G_BEGIN_DECLS
 | 
			
		||||
 | 
			
		||||
typedef struct _glibtop_netlist	glibtop_netlist;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_netlist:
 | 
			
		||||
 * @number: Number of entries in the returned list.
 | 
			
		||||
 */
 | 
			
		||||
struct _glibtop_netlist
 | 
			
		||||
{
 | 
			
		||||
	guint64 flags;
 | 
			
		||||
	guint32 number;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_get_netlist:
 | 
			
		||||
 * @buf: a #glibtop_netlist
 | 
			
		||||
 *
 | 
			
		||||
 * Returns: (array zero-terminated=1) (transfer none): an array of network
 | 
			
		||||
 *          interface names.
 | 
			
		||||
 */
 | 
			
		||||
char** glibtop_get_netlist(glibtop_netlist *buf);
 | 
			
		||||
 | 
			
		||||
#if GLIBTOP_SUID_NETLIST
 | 
			
		||||
@@ -45,13 +56,39 @@ char** glibtop_get_netlist(glibtop_netlist *buf);
 | 
			
		||||
#define glibtop_get_netlist_r		glibtop_get_netlist_s
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_get_netlist_l:
 | 
			
		||||
 * @server: a #glibtop server
 | 
			
		||||
 * @buf: a #glibtop_netlist
 | 
			
		||||
 *
 | 
			
		||||
 * Returns: (array zero-terminated=1) (transfer none): an array of network
 | 
			
		||||
 *          interface names.
 | 
			
		||||
 */
 | 
			
		||||
char** glibtop_get_netlist_l (glibtop *server, glibtop_netlist *buf);
 | 
			
		||||
 | 
			
		||||
#if GLIBTOP_SUID_NETLIST
 | 
			
		||||
void glibtop_init_netlist_p (glibtop *server);
 | 
			
		||||
void _glibtop_init_netlist_p (glibtop *server);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_get_netlist_p:
 | 
			
		||||
 * @server: a #glibtop server
 | 
			
		||||
 * @buf: a #glibtop_netlist
 | 
			
		||||
 *
 | 
			
		||||
 * Returns: (array zero-terminated=1) (transfer none): an array of network
 | 
			
		||||
 *          interface names.
 | 
			
		||||
 */
 | 
			
		||||
char** glibtop_get_netlist_p (glibtop *server, glibtop_netlist *buf);
 | 
			
		||||
#else
 | 
			
		||||
void glibtop_init_netlist_s (glibtop *server);
 | 
			
		||||
void _glibtop_init_netlist_s (glibtop *server);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_get_netlist_s:
 | 
			
		||||
 * @server: a #glibtop server
 | 
			
		||||
 * @buf: a #glibtop_netlist
 | 
			
		||||
 *
 | 
			
		||||
 * Returns: (array zero-terminated=1) (transfer none): an array of network
 | 
			
		||||
 *          interface names.
 | 
			
		||||
 */
 | 
			
		||||
char** glibtop_get_netlist_s (glibtop *server, glibtop_netlist *buf);
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_NETLOAD_H__
 | 
			
		||||
@@ -119,10 +117,10 @@ void glibtop_get_netload(glibtop_netload *buf, const char *interface);
 | 
			
		||||
void glibtop_get_netload_l (glibtop *server, glibtop_netload *buf, const char *interface);
 | 
			
		||||
 | 
			
		||||
#if GLIBTOP_SUID_NETLOAD
 | 
			
		||||
void glibtop_init_netload_p (glibtop *server);
 | 
			
		||||
void _glibtop_init_netload_p (glibtop *server);
 | 
			
		||||
void glibtop_get_netload_p (glibtop *server, glibtop_netload *buf, const char *interface);
 | 
			
		||||
#else
 | 
			
		||||
void glibtop_init_netload_s (glibtop *server);
 | 
			
		||||
void _glibtop_init_netload_s (glibtop *server);
 | 
			
		||||
void glibtop_get_netload_s (glibtop *server, glibtop_netload *buf, const char *interface);
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -15,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_OPEN_H__
 | 
			
		||||
 
 | 
			
		||||
@@ -15,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_PARAMETER_H__
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_PPP_H__
 | 
			
		||||
@@ -62,10 +60,10 @@ void glibtop_get_ppp(glibtop_ppp *buf, unsigned short device);
 | 
			
		||||
void glibtop_get_ppp_l (glibtop *server, glibtop_ppp *buf, unsigned short device);
 | 
			
		||||
 | 
			
		||||
#if GLIBTOP_SUID_PPP
 | 
			
		||||
void glibtop_init_ppp_p (glibtop *server);
 | 
			
		||||
void _glibtop_init_ppp_p (glibtop *server);
 | 
			
		||||
void glibtop_get_ppp_p (glibtop *server, glibtop_ppp *buf, unsigned short device);
 | 
			
		||||
#else
 | 
			
		||||
void glibtop_init_ppp_s (glibtop *server);
 | 
			
		||||
void _glibtop_init_ppp_s (glibtop *server);
 | 
			
		||||
void glibtop_get_ppp_s (glibtop *server, glibtop_ppp *buf, unsigned short device);
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										62
									
								
								include/glibtop/procaffinity.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										62
									
								
								include/glibtop/procaffinity.h
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,62 @@
 | 
			
		||||
/* Copyright (C) 2007 Benoît Dejean
 | 
			
		||||
   This file is part of LibGTop 2.
 | 
			
		||||
 | 
			
		||||
   LibGTop is free software; you can redistribute it and/or modify it
 | 
			
		||||
   under the terms of the GNU General Public License as published by
 | 
			
		||||
   the Free Software Foundation; either version 2 of the License,
 | 
			
		||||
   or (at your option) any later version.
 | 
			
		||||
 | 
			
		||||
   LibGTop is distributed in the hope that it will be useful, but WITHOUT
 | 
			
		||||
   ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 | 
			
		||||
   FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
 | 
			
		||||
   for more details.
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_PROCAFFINITY_H__
 | 
			
		||||
#define __GLIBTOP_PROCAFFINITY_H__
 | 
			
		||||
 | 
			
		||||
#include <glibtop.h>
 | 
			
		||||
#include <glibtop/global.h>
 | 
			
		||||
 | 
			
		||||
G_BEGIN_DECLS
 | 
			
		||||
 | 
			
		||||
typedef struct _glibtop_proc_affinity	glibtop_proc_affinity;
 | 
			
		||||
 | 
			
		||||
#define GLIBTOP_PROC_AFFINITY_NUMBER	0
 | 
			
		||||
#define GLIBTOP_PROC_AFFINITY_ALL	1
 | 
			
		||||
#define GLIBTOP_MAX_PROC_AFFINITY	2
 | 
			
		||||
 | 
			
		||||
struct _glibtop_proc_affinity
 | 
			
		||||
{
 | 
			
		||||
	guint64	flags;
 | 
			
		||||
	guint32 number;
 | 
			
		||||
	gboolean all;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
guint16 * glibtop_get_proc_affinity(glibtop_proc_affinity *buf, pid_t pid);
 | 
			
		||||
guint16 * glibtop_get_proc_affinity_l(glibtop *server, glibtop_proc_affinity *buf, pid_t pid);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#if GLIBTOP_SUID_PROC_AFFINITY
 | 
			
		||||
 | 
			
		||||
#define glibtop_get_proc_affinity_r glibtop_get_proc_affinity_p
 | 
			
		||||
void _glibtop_init_proc_affinity_p(glibtop *server);
 | 
			
		||||
guint16 * glibtop_get_proc_affinity_p(glibtop *server, glibtop_proc_affinity *buf, pid_t pid);
 | 
			
		||||
 | 
			
		||||
#else
 | 
			
		||||
 | 
			
		||||
#define glibtop_get_proc_affinity_r glibtop_get_proc_affinity_s
 | 
			
		||||
void _glibtop_init_proc_affinity_s(glibtop *server);
 | 
			
		||||
guint16 * glibtop_get_proc_affinity_s(glibtop *server, glibtop_proc_affinity *buf, pid_t pid);
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
G_END_DECLS
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_PROC_ARGS_H__
 | 
			
		||||
@@ -53,7 +51,7 @@ glibtop_get_proc_args (glibtop_proc_args *buf, pid_t pid, unsigned max_len);
 | 
			
		||||
 | 
			
		||||
# define glibtop_get_proc_args_r		glibtop_get_proc_args_p
 | 
			
		||||
 | 
			
		||||
  void glibtop_init_proc_args_p (glibtop *server);
 | 
			
		||||
  void _glibtop_init_proc_args_p (glibtop *server);
 | 
			
		||||
 | 
			
		||||
  char *
 | 
			
		||||
  glibtop_get_proc_args_p (glibtop *server, glibtop_proc_args *buf,
 | 
			
		||||
@@ -64,7 +62,7 @@ glibtop_get_proc_args (glibtop_proc_args *buf, pid_t pid, unsigned max_len);
 | 
			
		||||
 | 
			
		||||
# define glibtop_get_proc_args_r		glibtop_get_proc_args_s
 | 
			
		||||
 | 
			
		||||
  void glibtop_init_proc_args_s (glibtop *server);
 | 
			
		||||
  void _glibtop_init_proc_args_s (glibtop *server);
 | 
			
		||||
 | 
			
		||||
  char *
 | 
			
		||||
  glibtop_get_proc_args_s (glibtop *server, glibtop_proc_args *buf,
 | 
			
		||||
@@ -81,6 +79,15 @@ char **
 | 
			
		||||
glibtop_get_proc_argv_l (glibtop *server, glibtop_proc_args *buf,
 | 
			
		||||
			 pid_t pid, unsigned max_len);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_get_proc_argv:
 | 
			
		||||
 * @buf:
 | 
			
		||||
 * @pid:
 | 
			
		||||
 * @max_len:
 | 
			
		||||
 *
 | 
			
		||||
 * Returns: (transfer full):
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
char **
 | 
			
		||||
glibtop_get_proc_argv (glibtop_proc_args *buf, pid_t pid, unsigned max_len);
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_PROCKERNEL_H__
 | 
			
		||||
@@ -75,10 +73,10 @@ void glibtop_get_proc_kernel(glibtop_proc_kernel *buf, pid_t pid);
 | 
			
		||||
void glibtop_get_proc_kernel_l (glibtop *server, glibtop_proc_kernel *buf, pid_t pid);
 | 
			
		||||
 | 
			
		||||
#if GLIBTOP_SUID_PROC_KERNEL
 | 
			
		||||
void glibtop_init_proc_kernel_p (glibtop *server);
 | 
			
		||||
void _glibtop_init_proc_kernel_p (glibtop *server);
 | 
			
		||||
void glibtop_get_proc_kernel_p (glibtop *server, glibtop_proc_kernel *buf, pid_t pid);
 | 
			
		||||
#else
 | 
			
		||||
void glibtop_init_proc_kernel_s (glibtop *server);
 | 
			
		||||
void _glibtop_init_proc_kernel_s (glibtop *server);
 | 
			
		||||
void glibtop_get_proc_kernel_s (glibtop *server, glibtop_proc_kernel *buf, pid_t pid);
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_PROCLIST_H__
 | 
			
		||||
@@ -38,22 +36,89 @@ G_BEGIN_DECLS
 | 
			
		||||
/* You can use the folowing constants as the `which' member of
 | 
			
		||||
 * glibtop_get_proclist () to specify which processes to fetch. */
 | 
			
		||||
 | 
			
		||||
#define GLIBTOP_KERN_PROC_ALL		0	/* all processes */
 | 
			
		||||
/**
 | 
			
		||||
 * GLIBTOP_KERN_PROC_ALL:
 | 
			
		||||
 *
 | 
			
		||||
 * Return information about all processes
 | 
			
		||||
 **/
 | 
			
		||||
#define GLIBTOP_KERN_PROC_ALL		0
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * GLIBTOP_KERN_PROC_PID:
 | 
			
		||||
 *
 | 
			
		||||
 * Return all processes with the pid which is passed in @arg. You can use this to find out whether some process still exists.
 | 
			
		||||
 **/
 | 
			
		||||
#define GLIBTOP_KERN_PROC_PID		1
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * GLIBTOP_KERN_PROC_PGRP:
 | 
			
		||||
 *
 | 
			
		||||
 * Return all processes in the process group passed in @arg. 
 | 
			
		||||
 **/
 | 
			
		||||
#define GLIBTOP_KERN_PROC_PGRP		2
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * GLIBTOP_KERN_PROC_SESSION:
 | 
			
		||||
 *
 | 
			
		||||
 * Return all processes in the session passed in @arg. 
 | 
			
		||||
 **/
 | 
			
		||||
#define GLIBTOP_KERN_PROC_SESSION	3
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * GLIBTOP_KERN_PROC_TTY:
 | 
			
		||||
 *
 | 
			
		||||
 * Return all processes which have the controlling tty passed in @arg
 | 
			
		||||
 * (which is interpreted as the device number). 
 | 
			
		||||
 **/
 | 
			
		||||
#define GLIBTOP_KERN_PROC_TTY		4
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * GLIBTOP_KERN_PROC_UID:
 | 
			
		||||
 *
 | 
			
		||||
 * Return all processes with the effective uid passed in @arg. 
 | 
			
		||||
 **/
 | 
			
		||||
#define GLIBTOP_KERN_PROC_UID		5
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * GLIBTOP_KERN_PROC_RUID:
 | 
			
		||||
 *
 | 
			
		||||
 * Return all processes with the real uid passed in @arg. 
 | 
			
		||||
 **/
 | 
			
		||||
#define GLIBTOP_KERN_PROC_RUID		6
 | 
			
		||||
 | 
			
		||||
#define GLIBTOP_KERN_PROC_MASK		15
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * GLIBTOP_EXCLUDE_IDLE:
 | 
			
		||||
 *
 | 
			
		||||
 * Exclude idle processes. 
 | 
			
		||||
 **/
 | 
			
		||||
#define GLIBTOP_EXCLUDE_IDLE		0x1000
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * GLIBTOP_EXCLUDE_SYSTEM:
 | 
			
		||||
 *
 | 
			
		||||
 * Exclude system (on most UNIXes root's) processes.
 | 
			
		||||
 **/
 | 
			
		||||
#define GLIBTOP_EXCLUDE_SYSTEM		0x2000
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * GLIBTOP_EXCLUDE_NOTTY:
 | 
			
		||||
 *
 | 
			
		||||
 * Exclude processes without a controlling terminal.
 | 
			
		||||
 **/
 | 
			
		||||
#define GLIBTOP_EXCLUDE_NOTTY		0x4000
 | 
			
		||||
 | 
			
		||||
typedef struct _glibtop_proclist	glibtop_proclist;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_proclist:
 | 
			
		||||
 * @number: Number of entries in the returned list.
 | 
			
		||||
 * @total: Total size of the returned list (this equals @number * @size).
 | 
			
		||||
 * @size: Size of a single entry in the returned list 
 | 
			
		||||
 * (this equals <type>sizeof(unsigned)</type>).
 | 
			
		||||
 */
 | 
			
		||||
struct _glibtop_proclist
 | 
			
		||||
{
 | 
			
		||||
	guint64	flags;
 | 
			
		||||
@@ -62,7 +127,16 @@ struct _glibtop_proclist
 | 
			
		||||
	guint64 size;			/* GLIBTOP_PROCLIST_SIZE	*/
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
unsigned *
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_get_proclist:
 | 
			
		||||
 * @buf: a #glibtop_proclist
 | 
			
		||||
 * @which: a #GLIBTOP_* constant specifying process type
 | 
			
		||||
 * @arg: an argument specific for the process type
 | 
			
		||||
 *
 | 
			
		||||
 * Returns: (array zero-terminated=1) (transfer none): an array of process
 | 
			
		||||
 *     ids
 | 
			
		||||
 */
 | 
			
		||||
pid_t*
 | 
			
		||||
glibtop_get_proclist(glibtop_proclist *buf, gint64 which, gint64 arg);
 | 
			
		||||
 | 
			
		||||
#if GLIBTOP_SUID_PROCLIST
 | 
			
		||||
@@ -71,20 +145,50 @@ glibtop_get_proclist(glibtop_proclist *buf, gint64 which, gint64 arg);
 | 
			
		||||
#define glibtop_get_proclist_r		glibtop_get_proclist_s
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
unsigned *
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_get_proclist_l:
 | 
			
		||||
 * @server: a #glibtop server
 | 
			
		||||
 * @buf: a #glibtop_proclist
 | 
			
		||||
 * @which: a #GLIBTOP_* constant specifying process type
 | 
			
		||||
 * @arg: an argument specific for the process type
 | 
			
		||||
 *
 | 
			
		||||
 * Returns: (array zero-terminated=1) (transfer none): an array of process
 | 
			
		||||
 *     ids
 | 
			
		||||
 */
 | 
			
		||||
pid_t*
 | 
			
		||||
glibtop_get_proclist_l (glibtop *server, glibtop_proclist *buf,
 | 
			
		||||
			gint64 which, gint64 arg);
 | 
			
		||||
 | 
			
		||||
#if GLIBTOP_SUID_PROCLIST
 | 
			
		||||
void glibtop_init_proclist_p (glibtop *server);
 | 
			
		||||
void _glibtop_init_proclist_p (glibtop *server);
 | 
			
		||||
 | 
			
		||||
unsigned *
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_get_proclist_p:
 | 
			
		||||
 * @server: a #glibtop server
 | 
			
		||||
 * @buf: a #glibtop_proclist
 | 
			
		||||
 * @which: a #GLIBTOP_* constant specifying process type
 | 
			
		||||
 * @arg: an argument specific for the process type
 | 
			
		||||
 *
 | 
			
		||||
 * Returns: (array zero-terminated=1) (transfer none): an array of process
 | 
			
		||||
 *     ids
 | 
			
		||||
 */
 | 
			
		||||
pid_t*
 | 
			
		||||
glibtop_get_proclist_p (glibtop *server, glibtop_proclist *buf,
 | 
			
		||||
			gint64 which, gint64 arg);
 | 
			
		||||
#else
 | 
			
		||||
void glibtop_init_proclist_s (glibtop *server);
 | 
			
		||||
void _glibtop_init_proclist_s (glibtop *server);
 | 
			
		||||
 | 
			
		||||
unsigned *
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_get_proclist_s:
 | 
			
		||||
 * @server: a #glibtop server
 | 
			
		||||
 * @buf: a #glibtop_proclist
 | 
			
		||||
 * @which: a #GLIBTOP_* constant specifying process type
 | 
			
		||||
 * @arg: an argument specific for the process type
 | 
			
		||||
 *
 | 
			
		||||
 * Returns: (array zero-terminated=1) (transfer none): an array of process
 | 
			
		||||
 *     ids
 | 
			
		||||
 */
 | 
			
		||||
pid_t*
 | 
			
		||||
glibtop_get_proclist_s (glibtop *server, glibtop_proclist *buf,
 | 
			
		||||
			gint64 which, gint64 arg);
 | 
			
		||||
#endif
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_PROC_MAP_H__
 | 
			
		||||
@@ -50,8 +48,10 @@ G_BEGIN_DECLS
 | 
			
		||||
#define GLIBTOP_MAP_ENTRY_SHARED_DIRTY		10
 | 
			
		||||
#define GLIBTOP_MAP_ENTRY_PRIVATE_CLEAN		11
 | 
			
		||||
#define GLIBTOP_MAP_ENTRY_PRIVATE_DIRTY		12
 | 
			
		||||
#define GLIBTOP_MAP_ENTRY_PSS			13
 | 
			
		||||
#define GLIBTOP_MAP_ENTRY_SWAP			14
 | 
			
		||||
 | 
			
		||||
#define GLIBTOP_MAX_MAP_ENTRY		13
 | 
			
		||||
#define GLIBTOP_MAX_MAP_ENTRY		15
 | 
			
		||||
 | 
			
		||||
#define GLIBTOP_MAP_FILENAME_LEN	215
 | 
			
		||||
 | 
			
		||||
@@ -80,6 +80,8 @@ struct _glibtop_map_entry
 | 
			
		||||
	guint64 shared_dirty;
 | 
			
		||||
	guint64 private_clean; 
 | 
			
		||||
	guint64 private_dirty;
 | 
			
		||||
	guint64 pss;
 | 
			
		||||
	guint64 swap;
 | 
			
		||||
	char filename [GLIBTOP_MAP_FILENAME_LEN+1];
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
@@ -90,10 +92,46 @@ struct _glibtop_proc_map
 | 
			
		||||
	guint64 total;			/* GLIBTOP_PROC_MAP_TOTAL	*/
 | 
			
		||||
	guint64 size;			/* GLIBTOP_PROC_MAP_SIZE	*/
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_get_proc_map:
 | 
			
		||||
 * @buf:
 | 
			
		||||
 * @pid:
 | 
			
		||||
 *
 | 
			
		||||
 * Returns: (transfer none):
 | 
			
		||||
 */
 | 
			
		||||
glibtop_map_entry *
 | 
			
		||||
glibtop_get_proc_map(glibtop_proc_map *buf, pid_t pid);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_get_proc_map_l:
 | 
			
		||||
 * @server:
 | 
			
		||||
 * @buf: (out):
 | 
			
		||||
 * @pid:
 | 
			
		||||
 *
 | 
			
		||||
 * Returns: (transfer none):
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_get_proc_map_p:
 | 
			
		||||
 * @server:
 | 
			
		||||
 * @buf: (out):
 | 
			
		||||
 * @pid:
 | 
			
		||||
 *
 | 
			
		||||
 * Returns: (transfer none):
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_get_proc_map_s:
 | 
			
		||||
 * @server:
 | 
			
		||||
 * @buf: (out):
 | 
			
		||||
 * @pid:
 | 
			
		||||
 *
 | 
			
		||||
 * Returns: (transfer none):
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#if GLIBTOP_SUID_PROC_MAP
 | 
			
		||||
#define glibtop_get_proc_map_r		glibtop_get_proc_map_p
 | 
			
		||||
#else
 | 
			
		||||
@@ -104,17 +142,19 @@ glibtop_map_entry *
 | 
			
		||||
glibtop_get_proc_map_l (glibtop *server, glibtop_proc_map *buf, pid_t pid);
 | 
			
		||||
 | 
			
		||||
#if GLIBTOP_SUID_PROC_MAP
 | 
			
		||||
void glibtop_init_proc_map_p (glibtop *server);
 | 
			
		||||
void _glibtop_init_proc_map_p (glibtop *server);
 | 
			
		||||
 | 
			
		||||
glibtop_map_entry *
 | 
			
		||||
glibtop_get_proc_map_p (glibtop *server, glibtop_proc_map *buf, pid_t pid);
 | 
			
		||||
#else
 | 
			
		||||
void glibtop_init_proc_map_s (glibtop *server);
 | 
			
		||||
void _glibtop_init_proc_map_s (glibtop *server);
 | 
			
		||||
 | 
			
		||||
glibtop_map_entry *
 | 
			
		||||
glibtop_get_proc_map_s (glibtop *server, glibtop_proc_map *buf, pid_t pid);
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
GType     glibtop_map_entry_get_type (void) G_GNUC_CONST;
 | 
			
		||||
GType     glibtop_proc_map_get_type (void) G_GNUC_CONST;
 | 
			
		||||
 | 
			
		||||
G_END_DECLS
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_PROCMEM_H__
 | 
			
		||||
@@ -55,6 +53,12 @@ struct _glibtop_proc_mem
 | 
			
		||||
				 * of the process; usually 2,147,483,647 */
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_get_proc_map:
 | 
			
		||||
 * @buf:
 | 
			
		||||
 * @pid:
 | 
			
		||||
 *
 | 
			
		||||
 */
 | 
			
		||||
void glibtop_get_proc_mem(glibtop_proc_mem *buf, pid_t pid);
 | 
			
		||||
 | 
			
		||||
#if GLIBTOP_SUID_PROC_MEM
 | 
			
		||||
@@ -66,10 +70,10 @@ void glibtop_get_proc_mem(glibtop_proc_mem *buf, pid_t pid);
 | 
			
		||||
void glibtop_get_proc_mem_l (glibtop *server, glibtop_proc_mem *buf, pid_t pid);
 | 
			
		||||
 | 
			
		||||
#if GLIBTOP_SUID_PROC_MEM
 | 
			
		||||
void glibtop_init_proc_mem_p (glibtop *server);
 | 
			
		||||
void _glibtop_init_proc_mem_p (glibtop *server);
 | 
			
		||||
void glibtop_get_proc_mem_p (glibtop *server, glibtop_proc_mem *buf, pid_t pid);
 | 
			
		||||
#else
 | 
			
		||||
void glibtop_init_proc_mem_s (glibtop *server);
 | 
			
		||||
void _glibtop_init_proc_mem_s (glibtop *server);
 | 
			
		||||
void glibtop_get_proc_mem_s (glibtop *server, glibtop_proc_mem *buf, pid_t pid);
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   Copyright (C) 2004 Nicolás Lichtmaier
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
@@ -20,8 +18,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_PROC_OPEN_FILES_H__
 | 
			
		||||
@@ -55,7 +53,8 @@ enum glibtop_file_type {
 | 
			
		||||
	GLIBTOP_FILE_TYPE_FILE		= 1,
 | 
			
		||||
	GLIBTOP_FILE_TYPE_PIPE		= 2,
 | 
			
		||||
	GLIBTOP_FILE_TYPE_INETSOCKET	= 4,
 | 
			
		||||
	GLIBTOP_FILE_TYPE_LOCALSOCKET	= 8
 | 
			
		||||
	GLIBTOP_FILE_TYPE_LOCALSOCKET	= 8,
 | 
			
		||||
	GLIBTOP_FILE_TYPE_INET6SOCKET	= 16
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
typedef struct _glibtop_open_files_entry glibtop_open_files_entry;
 | 
			
		||||
@@ -67,7 +66,8 @@ struct _glibtop_open_files_entry
 | 
			
		||||
	int fd;
 | 
			
		||||
	guint16 type; /* An "enum glibtop_file_type" value. */
 | 
			
		||||
	union {
 | 
			
		||||
		/* When type == GLIBTOP_FILE_TYPE_INETSOCKET */
 | 
			
		||||
		/* When type == GLIBTOP_FILE_TYPE_INETSOCKET or
 | 
			
		||||
		 * when type == GLIBTOP_FILE_TYPE_INET6SOCKET */
 | 
			
		||||
		struct {
 | 
			
		||||
			char dest_host[GLIBTOP_OPEN_DEST_HOST_LEN+1];
 | 
			
		||||
			int dest_port;
 | 
			
		||||
@@ -94,6 +94,14 @@ struct _glibtop_proc_open_files
 | 
			
		||||
	guint64 size;			/* GLIBTOP_PROC_OPEN_FILES_SIZE   */
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_get_proc_open_files:
 | 
			
		||||
 * @buf:
 | 
			
		||||
 * @pid:
 | 
			
		||||
 *
 | 
			
		||||
 * Returns: (transfer none):
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
glibtop_open_files_entry *
 | 
			
		||||
glibtop_get_proc_open_files(glibtop_proc_open_files *buf, pid_t pid);
 | 
			
		||||
 | 
			
		||||
@@ -103,21 +111,44 @@ glibtop_get_proc_open_files(glibtop_proc_open_files *buf, pid_t pid);
 | 
			
		||||
#define glibtop_get_proc_open_files_r		glibtop_get_proc_open_files_s
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_get_proc_open_files_l:
 | 
			
		||||
 * @server:
 | 
			
		||||
 * @buf: (out):
 | 
			
		||||
 * @pid:
 | 
			
		||||
 *
 | 
			
		||||
 * Returns: (transfer none):
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
glibtop_open_files_entry *
 | 
			
		||||
glibtop_get_proc_open_files_l (glibtop *server, glibtop_proc_open_files *buf, pid_t pid);
 | 
			
		||||
 | 
			
		||||
#if GLIBTOP_SUID_PROC_FILE
 | 
			
		||||
void glibtop_init_proc_open_files_p (glibtop *server);
 | 
			
		||||
void _glibtop_init_proc_open_files_p (glibtop *server);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_get_proc_open_files_p:
 | 
			
		||||
 * @server:
 | 
			
		||||
 * @buf: (out):
 | 
			
		||||
 * @pid:
 | 
			
		||||
 *
 | 
			
		||||
 * Returns: (transfer none):
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
glibtop_open_files_entry *
 | 
			
		||||
glibtop_get_proc_open_files_p (glibtop *server, glibtop_proc_open_files *buf, pid_t pid);
 | 
			
		||||
#else
 | 
			
		||||
void glibtop_init_proc_open_files_s (glibtop *server);
 | 
			
		||||
void _glibtop_init_proc_open_files_s (glibtop *server);
 | 
			
		||||
 | 
			
		||||
glibtop_open_files_entry *
 | 
			
		||||
glibtop_get_proc_open_files_s (glibtop *server, glibtop_proc_open_files *buf, pid_t pid);
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
GType     glibtop_open_files_entry_get_type (void) G_GNUC_CONST;
 | 
			
		||||
GType     glibtop_proc_open_files_get_type (void) G_GNUC_CONST;
 | 
			
		||||
 | 
			
		||||
G_END_DECLS
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_PROCSEGMENT_H__
 | 
			
		||||
@@ -69,10 +67,10 @@ void glibtop_get_proc_segment(glibtop_proc_segment *buf, pid_t pid);
 | 
			
		||||
void glibtop_get_proc_segment_l (glibtop *server, glibtop_proc_segment *buf, pid_t pid);
 | 
			
		||||
 | 
			
		||||
#if GLIBTOP_SUID_PROC_SEGMENT
 | 
			
		||||
void glibtop_init_proc_segment_p (glibtop *server);
 | 
			
		||||
void _glibtop_init_proc_segment_p (glibtop *server);
 | 
			
		||||
void glibtop_get_proc_segment_p (glibtop *server, glibtop_proc_segment *buf, pid_t pid);
 | 
			
		||||
#else
 | 
			
		||||
void glibtop_init_proc_segment_s (glibtop *server);
 | 
			
		||||
void _glibtop_init_proc_segment_s (glibtop *server);
 | 
			
		||||
void glibtop_get_proc_segment_s (glibtop *server, glibtop_proc_segment *buf, pid_t pid);
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_PROCSIGNAL_H__
 | 
			
		||||
@@ -60,10 +58,10 @@ void glibtop_get_proc_signal(glibtop_proc_signal *buf, pid_t pid);
 | 
			
		||||
void glibtop_get_proc_signal_l (glibtop *server, glibtop_proc_signal *buf, pid_t pid);
 | 
			
		||||
 | 
			
		||||
#if GLIBTOP_SUID_PROC_SIGNAL
 | 
			
		||||
void glibtop_init_proc_signal_p (glibtop *server);
 | 
			
		||||
void _glibtop_init_proc_signal_p (glibtop *server);
 | 
			
		||||
void glibtop_get_proc_signal_p (glibtop *server, glibtop_proc_signal *buf, pid_t pid);
 | 
			
		||||
#else
 | 
			
		||||
void glibtop_init_proc_signal_s (glibtop *server);
 | 
			
		||||
void _glibtop_init_proc_signal_s (glibtop *server);
 | 
			
		||||
void glibtop_get_proc_signal_s (glibtop *server, glibtop_proc_signal *buf, pid_t pid);
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_PROCSTATE_H__
 | 
			
		||||
@@ -58,8 +56,7 @@ struct _glibtop_proc_state
 | 
			
		||||
	guint64 flags;
 | 
			
		||||
	char cmd[40];		/* basename of executable file in
 | 
			
		||||
				 * call to exec(2) */
 | 
			
		||||
	unsigned state;		/* single-char code for process state
 | 
			
		||||
				 * (S=sleeping) */
 | 
			
		||||
	unsigned state;
 | 
			
		||||
	/* NOTE: when porting the library, TRY HARD to implement the
 | 
			
		||||
	 *       following two fields. */
 | 
			
		||||
	/* IMPORTANT NOTICE: For security reasons, it is extremely important
 | 
			
		||||
@@ -85,10 +82,10 @@ void glibtop_get_proc_state(glibtop_proc_state *buf, pid_t pid);
 | 
			
		||||
void glibtop_get_proc_state_l (glibtop *server, glibtop_proc_state *buf, pid_t pid);
 | 
			
		||||
 | 
			
		||||
#if GLIBTOP_SUID_PROC_STATE
 | 
			
		||||
void glibtop_init_proc_state_p (glibtop *server);
 | 
			
		||||
void _glibtop_init_proc_state_p (glibtop *server);
 | 
			
		||||
void glibtop_get_proc_state_p (glibtop *server, glibtop_proc_state *buf, pid_t pid);
 | 
			
		||||
#else
 | 
			
		||||
void glibtop_init_proc_state_s (glibtop *server);
 | 
			
		||||
void _glibtop_init_proc_state_s (glibtop *server);
 | 
			
		||||
void glibtop_get_proc_state_s (glibtop *server, glibtop_proc_state *buf, pid_t pid);
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_PROCTIME_H__
 | 
			
		||||
@@ -48,26 +46,50 @@ typedef struct _glibtop_proc_time	glibtop_proc_time;
 | 
			
		||||
 | 
			
		||||
/* Time section */
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_proc_time:
 | 
			
		||||
 * @start_time: Start time of process in seconds since the epoch.
 | 
			
		||||
 * @rtime: Real time accumulated by process (should be @utime + @stime).
 | 
			
		||||
 * @utime: User-mode CPU time accumulated by process.
 | 
			
		||||
 * @stime: Kernel-mode CPU time accumulated by process.
 | 
			
		||||
 * @cutime: Cumulative utime of process and reaped children.
 | 
			
		||||
 * @cstime: Cumulative stime of process and reaped children.
 | 
			
		||||
 * @timeout: The time (in jiffies) of the process’s next timeout.
 | 
			
		||||
 * @it_real_value: The time (in jiffies) before the next <type>SIGALRM</type>
 | 
			
		||||
 * is sent to the process due to an interval timer.
 | 
			
		||||
 * @frequency: Tick frequency.
 | 
			
		||||
 * @xcpu_utime: SMP user-mode CPU time accumulated by process.
 | 
			
		||||
 * @xcpu_stime: SMP kernel-mode CPU time accumulated by process 
 | 
			
		||||
 *
 | 
			
		||||
 * Process time data filled by glibtop_get_proc_time().
 | 
			
		||||
 *
 | 
			
		||||
 * Under Linux the @start_time value may be wrong due to the information
 | 
			
		||||
 * available from the kernel.
 | 
			
		||||
 * 
 | 
			
		||||
 * The Linux kernel defines <type>INITIAL_JIFFIES</type> which implies a time
 | 
			
		||||
 * shift. Because <type>INITIAL_JIFFIES</type> is not user-space defined,
 | 
			
		||||
 * we cannot use it to compute an accurate @start_time. On Linux 2.6,
 | 
			
		||||
 * <type>INITIAL_JIFFIES</type> is 300 so @start_time is 
 | 
			
		||||
 * always 3s different from the real start time of the given process. You 
 | 
			
		||||
 * may also get shift results if your system clock is not synchronised 
 | 
			
		||||
 * with your hardware clock. See <command>man hwclock</command>.
 | 
			
		||||
 */
 | 
			
		||||
struct _glibtop_proc_time
 | 
			
		||||
{
 | 
			
		||||
    /*< private >*/
 | 
			
		||||
	guint64	flags;
 | 
			
		||||
	guint64 start_time;	/* start time of process --
 | 
			
		||||
				 * seconds since 1-1-70 */
 | 
			
		||||
	guint64 rtime;		/* real time accumulated by process */
 | 
			
		||||
	guint64 utime;		/* user-mode CPU time accumulated by process */
 | 
			
		||||
	guint64 stime;		/* kernel-mode CPU time accumulated by process */
 | 
			
		||||
	guint64 cutime;		/* cumulative utime of process and
 | 
			
		||||
				 * reaped children */
 | 
			
		||||
	guint64 cstime;		/* cumulative stime of process and
 | 
			
		||||
				 * reaped children */
 | 
			
		||||
	guint64 timeout;	/* The time (in jiffies) of the process's
 | 
			
		||||
				 * next timeout */
 | 
			
		||||
	guint64 it_real_value;	/* The time (in jiffies) before the
 | 
			
		||||
				 * next SIGALRM is sent to the process
 | 
			
		||||
				 * due to an interval timer. */
 | 
			
		||||
	guint64 frequency;	/* Tick frequency. */
 | 
			
		||||
	guint64 xcpu_utime [GLIBTOP_NCPU];	/* utime and stime for all CPUs on */
 | 
			
		||||
	guint64 xcpu_stime [GLIBTOP_NCPU];	/* SMP machines. */
 | 
			
		||||
	/*< public >*/
 | 
			
		||||
	guint64 start_time;
 | 
			
		||||
	guint64 rtime;
 | 
			
		||||
	guint64 utime;
 | 
			
		||||
	guint64 stime;
 | 
			
		||||
	guint64 cutime;
 | 
			
		||||
	guint64 cstime;
 | 
			
		||||
	guint64 timeout;
 | 
			
		||||
	guint64 it_real_value;
 | 
			
		||||
	guint64 frequency;
 | 
			
		||||
	guint64 xcpu_utime [GLIBTOP_NCPU];
 | 
			
		||||
	guint64 xcpu_stime [GLIBTOP_NCPU];
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@@ -82,10 +104,10 @@ void glibtop_get_proc_time(glibtop_proc_time *buf, pid_t pid);
 | 
			
		||||
void glibtop_get_proc_time_l (glibtop *server, glibtop_proc_time *buf, pid_t pid);
 | 
			
		||||
 | 
			
		||||
#if GLIBTOP_SUID_PROC_TIME
 | 
			
		||||
void glibtop_init_proc_time_p (glibtop *server);
 | 
			
		||||
void _glibtop_init_proc_time_p (glibtop *server);
 | 
			
		||||
void glibtop_get_proc_time_p (glibtop *server, glibtop_proc_time *buf, pid_t pid);
 | 
			
		||||
#else
 | 
			
		||||
void glibtop_init_proc_time_s (glibtop *server);
 | 
			
		||||
void _glibtop_init_proc_time_s (glibtop *server);
 | 
			
		||||
void glibtop_get_proc_time_s (glibtop *server, glibtop_proc_time *buf, pid_t pid);
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_PROCUID_H__
 | 
			
		||||
@@ -91,10 +89,10 @@ void glibtop_get_proc_uid(glibtop_proc_uid *buf, pid_t pid);
 | 
			
		||||
void glibtop_get_proc_uid_l (glibtop *server, glibtop_proc_uid *buf, pid_t pid);
 | 
			
		||||
 | 
			
		||||
#if GLIBTOP_SUID_PROC_UID
 | 
			
		||||
void glibtop_init_proc_uid_p (glibtop *server);
 | 
			
		||||
void _glibtop_init_proc_uid_p (glibtop *server);
 | 
			
		||||
void glibtop_get_proc_uid_p (glibtop *server, glibtop_proc_uid *buf, pid_t pid);
 | 
			
		||||
#else
 | 
			
		||||
void glibtop_init_proc_uid_s (glibtop *server);
 | 
			
		||||
void _glibtop_init_proc_uid_s (glibtop *server);
 | 
			
		||||
void glibtop_get_proc_uid_s (glibtop *server, glibtop_proc_uid *buf, pid_t pid);
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										76
									
								
								include/glibtop/procwd.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										76
									
								
								include/glibtop/procwd.h
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,76 @@
 | 
			
		||||
/* Copyright (C) 2007 Benoît Dejean
 | 
			
		||||
   This file is part of LibGTop 2.
 | 
			
		||||
 | 
			
		||||
   LibGTop is free software; you can redistribute it and/or modify it
 | 
			
		||||
   under the terms of the GNU General Public License as published by
 | 
			
		||||
   the Free Software Foundation; either version 2 of the License,
 | 
			
		||||
   or (at your option) any later version.
 | 
			
		||||
 | 
			
		||||
   LibGTop is distributed in the hope that it will be useful, but WITHOUT
 | 
			
		||||
   ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 | 
			
		||||
   FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
 | 
			
		||||
   for more details.
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_PROCWD_H__
 | 
			
		||||
#define __GLIBTOP_PROCWD_H__
 | 
			
		||||
 | 
			
		||||
#include <glibtop.h>
 | 
			
		||||
#include <glibtop/global.h>
 | 
			
		||||
 | 
			
		||||
G_BEGIN_DECLS
 | 
			
		||||
 | 
			
		||||
typedef struct _glibtop_proc_wd	glibtop_proc_wd;
 | 
			
		||||
 | 
			
		||||
#define GLIBTOP_PROC_WD_NUMBER	0
 | 
			
		||||
#define GLIBTOP_PROC_WD_ROOT	1
 | 
			
		||||
#define GLIBTOP_PROC_WD_EXE	2
 | 
			
		||||
#define GLIBTOP_MAX_PROC_WD	3
 | 
			
		||||
 | 
			
		||||
#define GLIBTOP_PROC_WD_ROOT_LEN 215
 | 
			
		||||
#define GLIBTOP_PROC_WD_EXE_LEN 215
 | 
			
		||||
 | 
			
		||||
struct _glibtop_proc_wd
 | 
			
		||||
{
 | 
			
		||||
	guint64	flags;
 | 
			
		||||
	guint32 number;
 | 
			
		||||
	char root[GLIBTOP_PROC_WD_ROOT_LEN+1];
 | 
			
		||||
	char exe[GLIBTOP_PROC_WD_EXE_LEN+1];
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_get_proc_wd:
 | 
			
		||||
 * @buf:
 | 
			
		||||
 * @pid:
 | 
			
		||||
 *
 | 
			
		||||
 * Returns: (transfer full):
 | 
			
		||||
 */
 | 
			
		||||
char ** glibtop_get_proc_wd(glibtop_proc_wd *buf, pid_t pid);
 | 
			
		||||
char ** glibtop_get_proc_wd_l(glibtop *server, glibtop_proc_wd *buf, pid_t pid);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#if GLIBTOP_SUID_PROC_WD
 | 
			
		||||
 | 
			
		||||
#define glibtop_get_proc_wd_r glibtop_get_proc_wd_p
 | 
			
		||||
void _glibtop_init_proc_wd_p(glibtop *server);
 | 
			
		||||
char ** glibtop_get_proc_wd_p(glibtop *server, glibtop_proc_wd *buf, pid_t pid);
 | 
			
		||||
 | 
			
		||||
#else
 | 
			
		||||
 | 
			
		||||
#define glibtop_get_proc_wd_r glibtop_get_proc_wd_s
 | 
			
		||||
void _glibtop_init_proc_wd_s(glibtop *server);
 | 
			
		||||
char ** glibtop_get_proc_wd_s(glibtop *server, glibtop_proc_wd *buf, pid_t pid);
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
G_END_DECLS
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_READ_H__
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_READ_DATA_H__
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_SEM_LIMITS_H__
 | 
			
		||||
@@ -70,10 +68,10 @@ void glibtop_get_sem_limits(glibtop_sem_limits *buf);
 | 
			
		||||
void glibtop_get_sem_limits_l (glibtop *server, glibtop_sem_limits *buf);
 | 
			
		||||
 | 
			
		||||
#if GLIBTOP_SUID_SEM_LIMITS
 | 
			
		||||
void glibtop_init_sem_limits_p (glibtop *server);
 | 
			
		||||
void _glibtop_init_sem_limits_p (glibtop *server);
 | 
			
		||||
void glibtop_get_sem_limits_p (glibtop *server, glibtop_sem_limits *buf);
 | 
			
		||||
#else
 | 
			
		||||
void glibtop_init_sem_limits_s (glibtop *server);
 | 
			
		||||
void _glibtop_init_sem_limits_s (glibtop *server);
 | 
			
		||||
void glibtop_get_sem_limits_s (glibtop *server, glibtop_sem_limits *buf);
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_SHM_LIMITS_H__
 | 
			
		||||
@@ -39,6 +37,9 @@ G_BEGIN_DECLS
 | 
			
		||||
 | 
			
		||||
typedef struct _glibtop_shm_limits	glibtop_shm_limits;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_shm_limits:
 | 
			
		||||
 */
 | 
			
		||||
struct _glibtop_shm_limits
 | 
			
		||||
{
 | 
			
		||||
	guint64	flags;
 | 
			
		||||
@@ -49,6 +50,10 @@ struct _glibtop_shm_limits
 | 
			
		||||
	guint64 shmall;		/* GLIBTOP_IPC_SHMALL	*/
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_get_shm_limits:
 | 
			
		||||
 * @buf: a #glibtop_shm_limits
 | 
			
		||||
 */
 | 
			
		||||
void glibtop_get_shm_limits(glibtop_shm_limits *buf);
 | 
			
		||||
 | 
			
		||||
#if GLIBTOP_SUID_SHM_LIMITS
 | 
			
		||||
@@ -57,13 +62,28 @@ void glibtop_get_shm_limits(glibtop_shm_limits *buf);
 | 
			
		||||
#define glibtop_get_shm_limits_r	glibtop_get_shm_limits_s
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_get_shm_limits_l:
 | 
			
		||||
 * @server: a #glibtop server
 | 
			
		||||
 * @buf: a #glibtop_shm_limits
 | 
			
		||||
 */
 | 
			
		||||
void glibtop_get_shm_limits_l (glibtop *server, glibtop_shm_limits *buf);
 | 
			
		||||
 | 
			
		||||
#if GLIBTOP_SUID_SHM_LIMITS
 | 
			
		||||
void glibtop_init_shm_limits_p (glibtop *server);
 | 
			
		||||
void _glibtop_init_shm_limits_p (glibtop *server);
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_get_shm_limits_p:
 | 
			
		||||
 * @server: a #glibtop server
 | 
			
		||||
 * @buf: a #glibtop_shm_limits
 | 
			
		||||
 */
 | 
			
		||||
void glibtop_get_shm_limits_p (glibtop *, glibtop_shm_limits *buf);
 | 
			
		||||
#else
 | 
			
		||||
void glibtop_init_shm_limits_s (glibtop *server);
 | 
			
		||||
void _glibtop_init_shm_limits_s (glibtop *server);
 | 
			
		||||
/**
 | 
			
		||||
 * glibtop_get_shm_limits_s:
 | 
			
		||||
 * @server: a #glibtop server
 | 
			
		||||
 * @buf: a #glibtop_shm_limits
 | 
			
		||||
 */
 | 
			
		||||
void glibtop_get_shm_limits_s (glibtop *server, glibtop_shm_limits *buf);
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_SIGNAL_H__
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_SWAP_H__
 | 
			
		||||
@@ -61,10 +59,10 @@ glibtop_get_swap(glibtop_swap *buf);
 | 
			
		||||
void glibtop_get_swap_l (glibtop *server, glibtop_swap *buf);
 | 
			
		||||
 | 
			
		||||
#if GLIBTOP_SUID_SWAP
 | 
			
		||||
void glibtop_init_swap_p (glibtop *server);
 | 
			
		||||
void _glibtop_init_swap_p (glibtop *server);
 | 
			
		||||
void glibtop_get_swap_p (glibtop *server, glibtop_swap *buf);
 | 
			
		||||
#else
 | 
			
		||||
void glibtop_init_swap_s (glibtop *server);
 | 
			
		||||
void _glibtop_init_swap_s (glibtop *server);
 | 
			
		||||
void glibtop_get_swap_s (glibtop *server, glibtop_swap *buf);
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_SYSDEPS_H__
 | 
			
		||||
@@ -53,8 +51,13 @@ G_BEGIN_DECLS
 | 
			
		||||
#define GLIBTOP_SYSDEPS_PPP		22
 | 
			
		||||
#define GLIBTOP_SYSDEPS_NETLIST		23
 | 
			
		||||
#define GLIBTOP_SYSDEPS_PROC_OPEN_FILES	24
 | 
			
		||||
#define GLIBTOP_SYSDEPS_PROC_WD		25
 | 
			
		||||
#define GLIBTOP_SYSDEPS_PROC_AFFINITY	26
 | 
			
		||||
 | 
			
		||||
#define GLIBTOP_MAX_SYSDEPS		25
 | 
			
		||||
#define GLIBTOP_MAX_SYSDEPS		27
 | 
			
		||||
 | 
			
		||||
/* The 'features' args to glibtop_init_* is an unsigned long */
 | 
			
		||||
G_STATIC_ASSERT((1UL << (GLIBTOP_MAX_SYSDEPS - 1)) <= ULONG_MAX);
 | 
			
		||||
 | 
			
		||||
#define GLIBTOP_SYSDEPS_ALL		((1 << GLIBTOP_MAX_SYSDEPS) - 1)
 | 
			
		||||
 | 
			
		||||
@@ -88,6 +91,8 @@ struct _glibtop_sysdeps
 | 
			
		||||
	guint64 netlist;		/* glibtop_netlist	*/
 | 
			
		||||
	guint64 netload;		/* glibtop_netload	*/
 | 
			
		||||
	guint64 ppp;			/* glibtop_ppp		*/
 | 
			
		||||
	guint64	proc_wd;		/* glibtop_proc_wd	*/
 | 
			
		||||
	guint64	proc_affinity;		/* glibtop_proc_affinity */
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
void glibtop_get_sysdeps (glibtop_sysdeps *buf);
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_SYSINFO_H__
 | 
			
		||||
@@ -50,7 +48,8 @@ struct _glibtop_entry
 | 
			
		||||
 | 
			
		||||
struct _glibtop_sysinfo
 | 
			
		||||
{
 | 
			
		||||
	guint64	flags, ncpu;
 | 
			
		||||
	guint64	flags;
 | 
			
		||||
	guint64 ncpu;
 | 
			
		||||
	glibtop_entry cpuinfo [GLIBTOP_NCPU];
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_UNION_H__
 | 
			
		||||
@@ -44,6 +42,8 @@
 | 
			
		||||
#include <glibtop/procargs.h>
 | 
			
		||||
#include <glibtop/procmap.h>
 | 
			
		||||
#include <glibtop/procopenfiles.h>
 | 
			
		||||
#include <glibtop/procwd.h>
 | 
			
		||||
#include <glibtop/procaffinity.h>
 | 
			
		||||
 | 
			
		||||
#include <glibtop/mountlist.h>
 | 
			
		||||
#include <glibtop/fsusage.h>
 | 
			
		||||
@@ -82,6 +82,8 @@ union _glibtop_union
 | 
			
		||||
	glibtop_netload		netload;
 | 
			
		||||
	glibtop_ppp		ppp;
 | 
			
		||||
	glibtop_proc_open_files proc_open_files;
 | 
			
		||||
	glibtop_proc_wd		proc_wd;
 | 
			
		||||
	glibtop_proc_affinity	proc_affinity;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
G_END_DECLS
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_UPTIME_H__
 | 
			
		||||
@@ -56,10 +54,10 @@ void glibtop_get_uptime (glibtop_uptime *buf);
 | 
			
		||||
void glibtop_get_uptime_l (glibtop *server, glibtop_uptime *buf);
 | 
			
		||||
 | 
			
		||||
#if GLIBTOP_SUID_UPTIME
 | 
			
		||||
void glibtop_init_uptime_p (glibtop *server);
 | 
			
		||||
void _glibtop_init_uptime_p (glibtop *server);
 | 
			
		||||
void glibtop_get_uptime_p (glibtop *server, glibtop_uptime *buf);
 | 
			
		||||
#else
 | 
			
		||||
void glibtop_init_uptime_s (glibtop *server);
 | 
			
		||||
void _glibtop_init_uptime_s (glibtop *server);
 | 
			
		||||
void glibtop_get_uptime_s (glibtop *server, glibtop_uptime *buf);
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -15,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_VERSION_H__
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef __GLIBTOP_WRITE_H__
 | 
			
		||||
 
 | 
			
		||||
@@ -1,8 +0,0 @@
 | 
			
		||||
.deps
 | 
			
		||||
.libs
 | 
			
		||||
Makefile
 | 
			
		||||
Makefile.in
 | 
			
		||||
libgtop.la
 | 
			
		||||
*.lo
 | 
			
		||||
lib.c
 | 
			
		||||
error.loT
 | 
			
		||||
@@ -1,13 +1,13 @@
 | 
			
		||||
 | 
			
		||||
INCLUDES			= @INCLUDES@
 | 
			
		||||
AM_CPPFLAGS			= @AM_CPPFLAGS@
 | 
			
		||||
 | 
			
		||||
lib_LTLIBRARIES			= libgtop-2.0.la
 | 
			
		||||
 | 
			
		||||
libgtop_2_0_la_SOURCES		= init.c open.c close.c command.c read.c \
 | 
			
		||||
				  read_data.c write.c lib.c parameter.c \
 | 
			
		||||
				  sysdeps.c
 | 
			
		||||
				  sysdeps.c boxed.c
 | 
			
		||||
 | 
			
		||||
libgtop_2_0_la_LDFLAGS		= $(LT_VERSION_INFO) -export-symbols-regex "^[^_].*"
 | 
			
		||||
libgtop_2_0_la_LDFLAGS		= $(LT_VERSION_INFO) -export-symbols $(srcdir)/libgtop.sym -no-undefined
 | 
			
		||||
libgtop_2_0_la_LIBADD		= $(GLIB_LIBS) $(top_builddir)/sysdeps/common/libgtop_common-2.0.la $(top_builddir)/sysdeps/@sysdeps_dir@/libgtop_sysdeps-2.0.la $(sysdeps_suid_lib)
 | 
			
		||||
 | 
			
		||||
BUILT_SOURCES			= lib.c
 | 
			
		||||
@@ -16,7 +16,40 @@ lib.c: lib.pl $(top_builddir)/config.h $(top_srcdir)/features.def
 | 
			
		||||
	$(PERL) $(srcdir)/lib.pl < $(top_srcdir)/features.def > lib-t
 | 
			
		||||
	mv lib-t lib.c
 | 
			
		||||
 | 
			
		||||
EXTRA_DIST			= lib.pl
 | 
			
		||||
EXTRA_DIST			= lib.pl libgtop.sym
 | 
			
		||||
 | 
			
		||||
CLEANFILES			= lib.c
 | 
			
		||||
 | 
			
		||||
-include $(INTROSPECTION_MAKEFILE)
 | 
			
		||||
INTROSPECTION_GIRS =
 | 
			
		||||
INTROSPECTION_SCANNER_ARGS = --accept-unprefixed --warn-all
 | 
			
		||||
INTROSPECTION_COMPILER_ARGS =
 | 
			
		||||
 | 
			
		||||
if HAVE_INTROSPECTION
 | 
			
		||||
introspection_sources = $(libgtop_2_0_la_SOURCES) lib.c ../glibtop.h ../libgtopconfig.h \
 | 
			
		||||
			../include/glibtop/close.h ../include/glibtop/loadavg.h ../include/glibtop/prockernel.h ../include/glibtop/procstate.h \
 | 
			
		||||
			../include/glibtop/sem_limits.h ../include/glibtop/uptime.h ../include/glibtop/command.h ../include/glibtop/mem.h ../include/glibtop/proclist.h \
 | 
			
		||||
			../include/glibtop/proctime.h ../include/glibtop/shm_limits.h ../include/glibtop/cpu.h ../include/glibtop/msg_limits.h \
 | 
			
		||||
			../include/glibtop/procmem.h ../include/glibtop/procuid.h ../include/glibtop/swap.h \
 | 
			
		||||
			../include/glibtop/procsegment.h ../include/glibtop/sysdeps.h ../include/glibtop/global.h \
 | 
			
		||||
			../include/glibtop/procsignal.h ../include/glibtop/union.h ../include/glibtop/gnuserv.h \
 | 
			
		||||
			../include/glibtop/parameter.h ../include/glibtop/mountlist.h ../include/glibtop/fsusage.h ../include/glibtop/procmap.h ../include/glibtop/signal.h \
 | 
			
		||||
			../include/glibtop/sysinfo.h ../include/glibtop/ppp.h ../include/glibtop/procargs.h ../include/glibtop/netload.h \
 | 
			
		||||
			../include/glibtop/procwd.h ../include/glibtop/procaffinity.h \
 | 
			
		||||
			../include/glibtop/netlist.h ../include/glibtop/procopenfiles.h ../include/glibtop/open.h
 | 
			
		||||
 | 
			
		||||
GTop-2.0.gir: libgtop-2.0.la
 | 
			
		||||
GTop_2_0_gir_AM_CPPFLAGS = GObject-2.0
 | 
			
		||||
GTop_2_0_gir_CFLAGS = $(AM_CPPFLAGS)
 | 
			
		||||
GTop_2_0_gir_LIBS = libgtop-2.0.la
 | 
			
		||||
GTop_2_0_gir_FILES = $(introspection_sources)
 | 
			
		||||
INTROSPECTION_GIRS += GTop-2.0.gir
 | 
			
		||||
 | 
			
		||||
girdir = $(datadir)/gir-1.0
 | 
			
		||||
gir_DATA = $(INTROSPECTION_GIRS)
 | 
			
		||||
 | 
			
		||||
typelibdir = $(libdir)/girepository-1.0
 | 
			
		||||
typelib_DATA = $(INTROSPECTION_GIRS:.gir=.typelib)
 | 
			
		||||
 | 
			
		||||
CLEANFILES += $(gir_DATA) $(typelib_DATA)
 | 
			
		||||
endif
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										47
									
								
								lib/boxed.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										47
									
								
								lib/boxed.c
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,47 @@
 | 
			
		||||
/* Copyright (C) 2011 Red Hat
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
   Contributed by Jasper St. Pierre <jstpierre@mecheye.net>, November 2011
 | 
			
		||||
 | 
			
		||||
   LibGTop is free software; you can redistribute it and/or modify it
 | 
			
		||||
   under the terms of the GNU General Public License as published by
 | 
			
		||||
   the Free Software Foundation; either version 2 of the License,
 | 
			
		||||
   or (at your option) any later version.
 | 
			
		||||
 | 
			
		||||
   LibGTop is distributed in the hope that it will be useful, but WITHOUT
 | 
			
		||||
   ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 | 
			
		||||
   FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
 | 
			
		||||
   for more details.
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#include <glibtop.h>
 | 
			
		||||
#include <glibtop/mountlist.h>
 | 
			
		||||
#include <glibtop/procmap.h>
 | 
			
		||||
#include <glibtop/procopenfiles.h>
 | 
			
		||||
 | 
			
		||||
#define DEFINE_BOXED(type)                              \
 | 
			
		||||
    static type *                                       \
 | 
			
		||||
    type##_copy (type *p)                               \
 | 
			
		||||
    {                                                   \
 | 
			
		||||
        type *n = g_new (type, 1);                      \
 | 
			
		||||
        memcpy (n, p, sizeof (type));                   \
 | 
			
		||||
        return n;                                       \
 | 
			
		||||
    }                                                   \
 | 
			
		||||
                                                        \
 | 
			
		||||
    G_DEFINE_BOXED_TYPE (type,                          \
 | 
			
		||||
                         type,                          \
 | 
			
		||||
                         type##_copy,                   \
 | 
			
		||||
                         g_free)
 | 
			
		||||
 | 
			
		||||
DEFINE_BOXED (glibtop);
 | 
			
		||||
DEFINE_BOXED (glibtop_map_entry);
 | 
			
		||||
DEFINE_BOXED (glibtop_proc_map);
 | 
			
		||||
DEFINE_BOXED (glibtop_open_files_entry);
 | 
			
		||||
DEFINE_BOXED (glibtop_proc_open_files);
 | 
			
		||||
DEFINE_BOXED (glibtop_mountentry);
 | 
			
		||||
DEFINE_BOXED (glibtop_mountlist);
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#include <config.h>
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,11 +15,12 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#include <config.h>
 | 
			
		||||
#include <glibtop/error.h>
 | 
			
		||||
#include <glibtop/read.h>
 | 
			
		||||
#include <glibtop/write.h>
 | 
			
		||||
#include <glibtop/read_data.h>
 | 
			
		||||
@@ -37,6 +36,43 @@ glibtop_call_l (glibtop *server, unsigned command, size_t send_size,
 | 
			
		||||
 | 
			
		||||
	glibtop_init_r (&server, 0, 0);
 | 
			
		||||
 | 
			
		||||
	g_assert(command >= GLIBTOP_CMND_QUIT && command < GLIBTOP_MAX_CMND);
 | 
			
		||||
 | 
			
		||||
	switch (command) {
 | 
			
		||||
#define CHECK_CMND(CMND) case (CMND): glibtop_debug("CALL: command %s sending %lu bytes", #CMND, (unsigned long)send_size); break
 | 
			
		||||
	  CHECK_CMND(GLIBTOP_CMND_QUIT);
 | 
			
		||||
	  CHECK_CMND(GLIBTOP_CMND_SYSDEPS);
 | 
			
		||||
	  CHECK_CMND(GLIBTOP_CMND_CPU);
 | 
			
		||||
	  CHECK_CMND(GLIBTOP_CMND_MEM);
 | 
			
		||||
	  CHECK_CMND(GLIBTOP_CMND_SWAP);
 | 
			
		||||
	  CHECK_CMND(GLIBTOP_CMND_UPTIME);
 | 
			
		||||
	  CHECK_CMND(GLIBTOP_CMND_LOADAVG);
 | 
			
		||||
	  CHECK_CMND(GLIBTOP_CMND_SHM_LIMITS);
 | 
			
		||||
	  CHECK_CMND(GLIBTOP_CMND_MSG_LIMITS);
 | 
			
		||||
	  CHECK_CMND(GLIBTOP_CMND_SEM_LIMITS);
 | 
			
		||||
	  CHECK_CMND(GLIBTOP_CMND_PROCLIST);
 | 
			
		||||
	  CHECK_CMND(GLIBTOP_CMND_PROC_STATE);
 | 
			
		||||
	  CHECK_CMND(GLIBTOP_CMND_PROC_UID);
 | 
			
		||||
	  CHECK_CMND(GLIBTOP_CMND_PROC_MEM);
 | 
			
		||||
	  CHECK_CMND(GLIBTOP_CMND_PROC_TIME);
 | 
			
		||||
	  CHECK_CMND(GLIBTOP_CMND_PROC_SIGNAL);
 | 
			
		||||
	  CHECK_CMND(GLIBTOP_CMND_PROC_KERNEL);
 | 
			
		||||
	  CHECK_CMND(GLIBTOP_CMND_PROC_SEGMENT);
 | 
			
		||||
	  CHECK_CMND(GLIBTOP_CMND_PROC_ARGS);
 | 
			
		||||
	  CHECK_CMND(GLIBTOP_CMND_PROC_MAP);
 | 
			
		||||
	  CHECK_CMND(GLIBTOP_CMND_MOUNTLIST);
 | 
			
		||||
	  CHECK_CMND(GLIBTOP_CMND_FSUSAGE);
 | 
			
		||||
	  CHECK_CMND(GLIBTOP_CMND_NETLOAD);
 | 
			
		||||
	  CHECK_CMND(GLIBTOP_CMND_PPP);
 | 
			
		||||
	  CHECK_CMND(GLIBTOP_CMND_NETLIST);
 | 
			
		||||
	  CHECK_CMND(GLIBTOP_CMND_PROC_OPEN_FILES);
 | 
			
		||||
	  CHECK_CMND(GLIBTOP_CMND_PROC_WD);
 | 
			
		||||
	  CHECK_CMND(GLIBTOP_CMND_PROC_AFFINITY);
 | 
			
		||||
	default:
 | 
			
		||||
	  glibtop_error_r(server, "CALL: command UNKNOWN(%d) sending %lu bytes", command, (unsigned long)send_size); break;
 | 
			
		||||
	}
 | 
			
		||||
#undef CHECK_CMND
 | 
			
		||||
 | 
			
		||||
	cmnd.command = command;
 | 
			
		||||
 | 
			
		||||
	/* If send_size is less than _GLIBTOP_PARAM_SIZE (normally 16 Bytes), we
 | 
			
		||||
@@ -54,10 +90,8 @@ glibtop_call_l (glibtop *server, unsigned command, size_t send_size,
 | 
			
		||||
 | 
			
		||||
	glibtop_read_l (server, sizeof (glibtop_response), &response);
 | 
			
		||||
 | 
			
		||||
#ifdef DEBUG
 | 
			
		||||
	fprintf (stderr, "RESPONSE: %lu - %d\n",
 | 
			
		||||
	glibtop_debug ("RESPONSE: offset=%lu - data_size=%lu",
 | 
			
		||||
		 response.offset, response.data_size);
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
	if (recv_buf)
 | 
			
		||||
		memcpy (recv_buf, ((char *) &response) + response.offset,
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										175
									
								
								lib/error.c
									
									
									
									
									
								
							
							
						
						
									
										175
									
								
								lib/error.c
									
									
									
									
									
								
							@@ -1,175 +0,0 @@
 | 
			
		||||
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 4 -*- */
 | 
			
		||||
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
   Contributed by Martin Baulig <martin@home-of-linux.org>, April 1998.
 | 
			
		||||
 | 
			
		||||
   LibGTop is free software; you can redistribute it and/or modify it
 | 
			
		||||
   under the terms of the GNU General Public License as published by
 | 
			
		||||
   the Free Software Foundation; either version 2 of the License,
 | 
			
		||||
   or (at your option) any later version.
 | 
			
		||||
 | 
			
		||||
   LibGTop is distributed in the hope that it will be useful, but WITHOUT
 | 
			
		||||
   ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 | 
			
		||||
   FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
 | 
			
		||||
   for more details.
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#include <config.h>
 | 
			
		||||
 | 
			
		||||
#include <glibtop/error.h>
 | 
			
		||||
 | 
			
		||||
#include <glib/gstrfuncs.h>
 | 
			
		||||
#include <errno.h>
 | 
			
		||||
 | 
			
		||||
#define DEFAULT_NAME	"LibGTop-Server"
 | 
			
		||||
 | 
			
		||||
/* Prints error message and exits. */
 | 
			
		||||
 | 
			
		||||
static void
 | 
			
		||||
print_server_name (glibtop_server *server)
 | 
			
		||||
{
 | 
			
		||||
    fprintf (stderr, "%s: ", server ?
 | 
			
		||||
	     (server->name ? server->name : DEFAULT_NAME)
 | 
			
		||||
	     : DEFAULT_NAME);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void
 | 
			
		||||
glibtop_error_vr (glibtop_server *server, char *format, va_list args)
 | 
			
		||||
{
 | 
			
		||||
    print_server_name (server);
 | 
			
		||||
    vfprintf (stderr, format, args);
 | 
			
		||||
    fprintf (stderr, "\n");
 | 
			
		||||
 | 
			
		||||
#ifdef LIBGTOP_ENABLE_DEBUG
 | 
			
		||||
    abort ();
 | 
			
		||||
#else
 | 
			
		||||
    exit (1);
 | 
			
		||||
#endif
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void
 | 
			
		||||
glibtop_error_io_vr (glibtop_server *server, char *format, int error, va_list args)
 | 
			
		||||
{
 | 
			
		||||
    print_server_name (server);
 | 
			
		||||
    vfprintf (stderr, format, args);
 | 
			
		||||
    fprintf (stderr, ": %s\n", g_strerror (error));
 | 
			
		||||
 | 
			
		||||
#ifdef LIBGTOP_ENABLE_DEBUG
 | 
			
		||||
    abort ();
 | 
			
		||||
#else
 | 
			
		||||
    exit (1);
 | 
			
		||||
#endif
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void
 | 
			
		||||
glibtop_warn_vr (glibtop_server *server, char *format, va_list args)
 | 
			
		||||
{
 | 
			
		||||
    print_server_name (server);
 | 
			
		||||
    vfprintf (stderr, format, args);
 | 
			
		||||
    fprintf (stderr, "\n");
 | 
			
		||||
 | 
			
		||||
#ifdef LIBGTOP_FATAL_WARNINGS
 | 
			
		||||
    abort ();
 | 
			
		||||
#endif
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void
 | 
			
		||||
glibtop_warn_io_vr (glibtop_server *server, char *format, int error, va_list args)
 | 
			
		||||
{
 | 
			
		||||
    print_server_name (server);
 | 
			
		||||
    vfprintf (stderr, format, args);
 | 
			
		||||
    fprintf (stderr, ": %s\n", g_strerror (error));
 | 
			
		||||
 | 
			
		||||
#ifdef LIBGTOP_FATAL_WARNINGS
 | 
			
		||||
    abort ();
 | 
			
		||||
#endif
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void
 | 
			
		||||
glibtop_error_r (glibtop_server *server, char *format, ...)
 | 
			
		||||
{
 | 
			
		||||
    va_list args;
 | 
			
		||||
 | 
			
		||||
    va_start (args, format);
 | 
			
		||||
    glibtop_error_vr (server, format, args);
 | 
			
		||||
    va_end (args);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void
 | 
			
		||||
glibtop_warn_r (glibtop_server *server, char *format, ...)
 | 
			
		||||
{
 | 
			
		||||
    va_list args;
 | 
			
		||||
 | 
			
		||||
    va_start (args, format);
 | 
			
		||||
    glibtop_warn_vr (server, format, args);
 | 
			
		||||
    va_end (args);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void
 | 
			
		||||
glibtop_error_io_r (glibtop_server *server, char *format, ...)
 | 
			
		||||
{
 | 
			
		||||
    va_list args;
 | 
			
		||||
 | 
			
		||||
    va_start (args, format);
 | 
			
		||||
    glibtop_error_io_vr (server, format, errno, args);
 | 
			
		||||
    va_end (args);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void
 | 
			
		||||
glibtop_warn_io_r (glibtop_server *server, char *format, ...)
 | 
			
		||||
{
 | 
			
		||||
    va_list args;
 | 
			
		||||
 | 
			
		||||
    va_start (args, format);
 | 
			
		||||
    glibtop_warn_io_vr (server, format, errno, args);
 | 
			
		||||
    va_end (args);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#ifndef  __GNUC__
 | 
			
		||||
 | 
			
		||||
static void
 | 
			
		||||
glibtop_error (char *format, ...)
 | 
			
		||||
{
 | 
			
		||||
    va_list args;
 | 
			
		||||
    va_start (args, format);
 | 
			
		||||
    glibtop_error_vr (glibtop_global_server, format, args);
 | 
			
		||||
    va_end (args);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static void
 | 
			
		||||
glibtop_warn (char *format, ...)
 | 
			
		||||
{
 | 
			
		||||
    va_list args;
 | 
			
		||||
    va_start (args, format);
 | 
			
		||||
    glibtop_warn_vr (glibtop_global_server, format, args);
 | 
			
		||||
    va_end (args);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static void
 | 
			
		||||
glibtop_error_io (char *format, ...)
 | 
			
		||||
{
 | 
			
		||||
    va_list args;
 | 
			
		||||
    va_start (args, format);
 | 
			
		||||
    glibtop_error_io_vr (glibtop_global_server, format, errno, args);
 | 
			
		||||
    va_end (args);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static void
 | 
			
		||||
glibtop_warn_io (char *format, ...)
 | 
			
		||||
{
 | 
			
		||||
    va_list args;
 | 
			
		||||
    va_start (args, format);
 | 
			
		||||
    glibtop_warn_io_vr (glibtop_global_server, format, errno, args);
 | 
			
		||||
    va_end (args);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#endif /* no __GNUC__ */
 | 
			
		||||
							
								
								
									
										21
									
								
								lib/init.c
									
									
									
									
									
								
							
							
						
						
									
										21
									
								
								lib/init.c
									
									
									
									
									
								
							@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +15,8 @@
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 | 
			
		||||
   Boston, MA 02110-1301, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#include <config.h>
 | 
			
		||||
@@ -28,12 +26,14 @@
 | 
			
		||||
#include <glibtop/open.h>
 | 
			
		||||
#include <glibtop/parameter.h>
 | 
			
		||||
#include <glibtop/init_hooks.h>
 | 
			
		||||
#include <glibtop/machine.h>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#ifndef DEFAULT_PORT
 | 
			
		||||
#define DEFAULT_PORT 42800
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
static glibtop _glibtop_global_server = { 0 };
 | 
			
		||||
static glibtop _glibtop_global_server;
 | 
			
		||||
glibtop *glibtop_global_server = &_glibtop_global_server;
 | 
			
		||||
 | 
			
		||||
static void
 | 
			
		||||
@@ -143,7 +143,7 @@ _init_server (glibtop *server, const unsigned features)
 | 
			
		||||
 | 
			
		||||
		/* Open pipe to server. */
 | 
			
		||||
		server->method = GLIBTOP_METHOD_PIPE;
 | 
			
		||||
 | 
			
		||||
		server->server_command = g_strdup(LIBGTOP_SERVER);
 | 
			
		||||
	} else {
 | 
			
		||||
 | 
			
		||||
		glibtop_error_r (server, "Unknown server method '%s'",
 | 
			
		||||
@@ -175,6 +175,9 @@ glibtop_init_r (glibtop **server_ptr, unsigned long features, unsigned flags)
 | 
			
		||||
	/* Do the initialization, but only if not already initialized. */
 | 
			
		||||
 | 
			
		||||
	if ((server->flags & _GLIBTOP_INIT_STATE_INIT) == 0) {
 | 
			
		||||
 | 
			
		||||
		glibtop_machine_new (server);
 | 
			
		||||
 | 
			
		||||
		if (flags & GLIBTOP_FEATURES_EXCEPT)
 | 
			
		||||
			features = ~features & GLIBTOP_SYSDEPS_ALL;
 | 
			
		||||
 | 
			
		||||
@@ -211,7 +214,7 @@ glibtop_init_r (glibtop **server_ptr, unsigned long features, unsigned flags)
 | 
			
		||||
	/* Open server, but only if not already opened. */
 | 
			
		||||
 | 
			
		||||
	if ((server->flags & _GLIBTOP_INIT_STATE_OPEN) == 0)
 | 
			
		||||
		glibtop_open_l (glibtop_global_server, "glibtop",
 | 
			
		||||
		glibtop_open_l (server, "glibtop",
 | 
			
		||||
				features, flags);
 | 
			
		||||
 | 
			
		||||
	return server;
 | 
			
		||||
@@ -221,7 +224,9 @@ glibtop *
 | 
			
		||||
glibtop_init_s (glibtop **server_ptr, unsigned long features, unsigned flags)
 | 
			
		||||
{
 | 
			
		||||
	glibtop *server;
 | 
			
		||||
	const glibtop_init_func_t *init_fkt;
 | 
			
		||||
	const _glibtop_init_func_t *init_fkt;
 | 
			
		||||
 | 
			
		||||
	glibtop_debug("init_s with features=%#0lx and flags=%#0x", features, flags);
 | 
			
		||||
 | 
			
		||||
	if (server_ptr == NULL)
 | 
			
		||||
		return NULL;
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										117
									
								
								lib/inodedb.c
									
									
									
									
									
								
							
							
						
						
									
										117
									
								
								lib/inodedb.c
									
									
									
									
									
								
							@@ -1,117 +0,0 @@
 | 
			
		||||
/* $Id$ */
 | 
			
		||||
 | 
			
		||||
/* Copyright (C) 1998-99 Martin Baulig
 | 
			
		||||
   This file is part of LibGTop 1.0.
 | 
			
		||||
 | 
			
		||||
   Contributed by Martin Baulig <martin@home-of-linux.org>, April 1998.
 | 
			
		||||
 | 
			
		||||
   LibGTop is free software; you can redistribute it and/or modify it
 | 
			
		||||
   under the terms of the GNU General Public License as published by
 | 
			
		||||
   the Free Software Foundation; either version 2 of the License,
 | 
			
		||||
   or (at your option) any later version.
 | 
			
		||||
 | 
			
		||||
   LibGTop is distributed in the hope that it will be useful, but WITHOUT
 | 
			
		||||
   ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 | 
			
		||||
   FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
 | 
			
		||||
   for more details.
 | 
			
		||||
 | 
			
		||||
   You should have received a copy of the GNU General Public License
 | 
			
		||||
   along with LibGTop; see the file COPYING. If not, write to the
 | 
			
		||||
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | 
			
		||||
   Boston, MA 02111-1307, USA.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#include <config.h>
 | 
			
		||||
#include <glibtop.h>
 | 
			
		||||
#include <glibtop/error.h>
 | 
			
		||||
#include <glibtop/inodedb.h>
 | 
			
		||||
 | 
			
		||||
#include <pwd.h>
 | 
			
		||||
#include <gdbm.h>
 | 
			
		||||
 | 
			
		||||
#ifndef SYSTEM_INODEDB
 | 
			
		||||
#define SYSTEM_INODEDB "/usr/var/libgtop/inodedb.db"
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
glibtop_inodedb *
 | 
			
		||||
glibtop_inodedb_open_s (glibtop *server, unsigned databases,
 | 
			
		||||
			unsigned long cachesize)
 | 
			
		||||
{
 | 
			
		||||
	glibtop_inodedb *inodedb;
 | 
			
		||||
	char filename [BUFSIZ];
 | 
			
		||||
	struct passwd *pwd;
 | 
			
		||||
	struct stat statb;
 | 
			
		||||
 | 
			
		||||
	if (!databases)
 | 
			
		||||
		databases = GLIBTOP_INODEDB_ALL;
 | 
			
		||||
 | 
			
		||||
	inodedb = g_malloc (sizeof (glibtop_inodedb));
 | 
			
		||||
 | 
			
		||||
	if (stat (SYSTEM_INODEDB, &statb))
 | 
			
		||||
		databases &= ~GLIBTOP_INODEDB_SYSTEM;
 | 
			
		||||
 | 
			
		||||
	if (databases & GLIBTOP_INODEDB_SYSTEM) {
 | 
			
		||||
		inodedb->system_dbf = gdbm_open
 | 
			
		||||
			(SYSTEM_INODEDB, 0, GDBM_READER, 0, 0);
 | 
			
		||||
		if (!inodedb->system_dbf)
 | 
			
		||||
			glibtop_error_io_r
 | 
			
		||||
				(server, "gdbm_open (%s)", SYSTEM_INODEDB);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	pwd = getpwuid (getuid ());
 | 
			
		||||
	if (!pwd) glibtop_error_io_r (server, "getpwuid");
 | 
			
		||||
 | 
			
		||||
	sprintf (filename, "%s/var/libgtop/inodedb.db", pwd->pw_dir);
 | 
			
		||||
 | 
			
		||||
	if (stat (filename, &statb))
 | 
			
		||||
		databases &= ~GLIBTOP_INODEDB_USER;
 | 
			
		||||
 | 
			
		||||
	if (databases & GLIBTOP_INODEDB_USER) {
 | 
			
		||||
		inodedb->user_dbf = gdbm_open
 | 
			
		||||
			(filename, 0, GDBM_READER, 0, 0);
 | 
			
		||||
		if (!inodedb->user_dbf)
 | 
			
		||||
			glibtop_error_io_r
 | 
			
		||||
				(server, "gdbm_open (%s)", filename);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	return inodedb;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
const char *
 | 
			
		||||
glibtop_inodedb_lookup_s (glibtop *server,
 | 
			
		||||
			  glibtop_inodedb *inodedb,
 | 
			
		||||
			  guint64 device, guint64 inode)
 | 
			
		||||
{
 | 
			
		||||
	glibtop_inodedb_key key;
 | 
			
		||||
	datum d_key, d_content;
 | 
			
		||||
 | 
			
		||||
	d_key.dptr = (void *) &key;
 | 
			
		||||
	d_key.dsize = sizeof (key);
 | 
			
		||||
 | 
			
		||||
	key.device = device;
 | 
			
		||||
	key.inode = inode;
 | 
			
		||||
 | 
			
		||||
	if (inodedb->system_dbf) {
 | 
			
		||||
		d_content = gdbm_fetch (inodedb->system_dbf, d_key);
 | 
			
		||||
		if (d_content.dptr) return d_content.dptr;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if (inodedb->user_dbf) {
 | 
			
		||||
		d_content = gdbm_fetch (inodedb->user_dbf, d_key);
 | 
			
		||||
		if (d_content.dptr) return d_content.dptr;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	return NULL;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void
 | 
			
		||||
glibtop_inodedb_close_s (glibtop *server, glibtop_inodedb *inodedb)
 | 
			
		||||
{
 | 
			
		||||
	if (inodedb->system_dbf)
 | 
			
		||||
		gdbm_close (inodedb->system_dbf);
 | 
			
		||||
 | 
			
		||||
	if (inodedb->user_dbf)
 | 
			
		||||
		gdbm_close (inodedb->user_dbf);
 | 
			
		||||
 | 
			
		||||
	g_free (inodedb);
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										39
									
								
								lib/lib.pl
									
									
									
									
									
								
							
							
						
						
									
										39
									
								
								lib/lib.pl
									
									
									
									
									
								
							@@ -88,7 +88,7 @@ sub output {
 | 
			
		||||
    @line_fields = split(/\|/, $line, 9999);
 | 
			
		||||
    $retval = $line_fields[1];
 | 
			
		||||
    $feature = $line_fields[2];
 | 
			
		||||
    $param_def = $line_fields[4];
 | 
			
		||||
    $param_def = $line_fields[3];
 | 
			
		||||
 | 
			
		||||
    $orig = $feature;
 | 
			
		||||
    $feature =~ s/^@//;
 | 
			
		||||
@@ -106,16 +106,16 @@ sub output {
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    if ($param_def eq 'string') {
 | 
			
		||||
	$call_param = ', ' . $line_fields[5];
 | 
			
		||||
	$call_param = ', ' . $line_fields[4];
 | 
			
		||||
	$param_buf = '';
 | 
			
		||||
	$buf_set = '';
 | 
			
		||||
	$param_decl = ",\n            " . $space . '    const char *' .
 | 
			
		||||
 | 
			
		||||
	  $line_fields[5];
 | 
			
		||||
	$send_ptr = "\n\tconst void *send_ptr = " . $line_fields[5] . ';';
 | 
			
		||||
	  $line_fields[4];
 | 
			
		||||
	$send_ptr = "\n\tconst void *send_ptr = " . $line_fields[4] . ';';
 | 
			
		||||
	$send_size = "\n\tconst size_t send_size =\n\t\tstrlen (" .
 | 
			
		||||
 | 
			
		||||
	  $line_fields[5] . ') + 1;';
 | 
			
		||||
	  $line_fields[4] . ') + 1;';
 | 
			
		||||
    }
 | 
			
		||||
    else {
 | 
			
		||||
	$call_param = '';
 | 
			
		||||
@@ -126,7 +126,7 @@ sub output {
 | 
			
		||||
	$buf_set = '';
 | 
			
		||||
	$nr_params = (@params = split(/:/, $param_def, 9999));
 | 
			
		||||
	if ($nr_params) {
 | 
			
		||||
	    $param_buf = "\n\tstruct {\n";
 | 
			
		||||
	    $param_buf = "\t\tstruct {\n";
 | 
			
		||||
	}
 | 
			
		||||
	for ($param = 1; $param <= $nr_params; $param++) {
 | 
			
		||||
	    $list = $params[$param];
 | 
			
		||||
@@ -138,8 +138,8 @@ sub output {
 | 
			
		||||
 | 
			
		||||
	    if ($count > 0) {
 | 
			
		||||
		for ($field = 1; $field <= $count; $field++) {
 | 
			
		||||
		    $param_buf .= "\t\t$convert{$type} buf_$fields[$field];\n";
 | 
			
		||||
		    $buf_set .= "\tparam_buf.buf_$fields[$field] = $fields[$field];\n";
 | 
			
		||||
		    $param_buf .= "\t\t\t$convert{$type} buf_$fields[$field];\n";
 | 
			
		||||
		    $buf_set .= "\t\tparam_buf.buf_$fields[$field] = $fields[$field];\n";
 | 
			
		||||
		}
 | 
			
		||||
	    }
 | 
			
		||||
 | 
			
		||||
@@ -155,19 +155,19 @@ sub output {
 | 
			
		||||
		  $fields[$field];
 | 
			
		||||
		$call_param = $call_param . ', ' . $fields[$field];
 | 
			
		||||
		if ($send_ptr eq '') {
 | 
			
		||||
		    $send_ptr = "\n\tconst void *send_ptr = ¶m_buf;";
 | 
			
		||||
		    $send_ptr = "\t\tconst void *send_ptr = ¶m_buf;";
 | 
			
		||||
		}
 | 
			
		||||
	    }
 | 
			
		||||
	}
 | 
			
		||||
	if ($nr_params) {
 | 
			
		||||
	    $param_buf .= "\t} param_buf;";
 | 
			
		||||
	    $send_size  = "\n\tconst size_t send_size = sizeof param_buf;";
 | 
			
		||||
	    $param_buf .= "\t\t} param_buf;\n";
 | 
			
		||||
	    $send_size  = "\t\tconst size_t send_size = sizeof param_buf;";
 | 
			
		||||
	}
 | 
			
		||||
	else {
 | 
			
		||||
	    $send_size = "\n\tconst size_t send_size = 0;";
 | 
			
		||||
	    $send_size = "\t\tconst size_t send_size = 0;";
 | 
			
		||||
	}
 | 
			
		||||
	if ($send_ptr eq '') {
 | 
			
		||||
	    $send_ptr = "\n\tconst void *send_ptr = NULL;";
 | 
			
		||||
	    $send_ptr = "\t\tconst void *send_ptr = NULL;";
 | 
			
		||||
	}
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
@@ -175,13 +175,11 @@ sub output {
 | 
			
		||||
 | 
			
		||||
      $feature . ' *buf' . $param_decl . ')';
 | 
			
		||||
 | 
			
		||||
    print "{" . $param_buf;
 | 
			
		||||
    print "{";
 | 
			
		||||
 | 
			
		||||
    print $send_ptr . '' . $send_size;
 | 
			
		||||
    if ($retval !~ /^void$/) {
 | 
			
		||||
	print "\t" . $retval . ' retval = (' . $retval . ') 0;';
 | 
			
		||||
    }
 | 
			
		||||
    print $buf_set;
 | 
			
		||||
 | 
			
		||||
    print "\tglibtop_init_r (&server, (1 << GLIBTOP_SYSDEPS_" .
 | 
			
		||||
 | 
			
		||||
@@ -198,6 +196,15 @@ sub output {
 | 
			
		||||
      &toupper($feature) . ')))';
 | 
			
		||||
    print "\t{";
 | 
			
		||||
 | 
			
		||||
    if ($param_buf) {
 | 
			
		||||
        print $param_buf;
 | 
			
		||||
        print $buf_set;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    print $send_ptr;
 | 
			
		||||
    print $send_size;
 | 
			
		||||
    print '';
 | 
			
		||||
 | 
			
		||||
    print "\t\t" . $prefix . 'glibtop_call_l (server, GLIBTOP_CMND_' .
 | 
			
		||||
 | 
			
		||||
      &toupper($feature) . ',';
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										77
									
								
								lib/libgtop.sym
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										77
									
								
								lib/libgtop.sym
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,77 @@
 | 
			
		||||
glibtop_call_l
 | 
			
		||||
glibtop_close
 | 
			
		||||
glibtop_close_r
 | 
			
		||||
glibtop_get_cpu
 | 
			
		||||
glibtop_get_cpu_l
 | 
			
		||||
glibtop_get_fsusage
 | 
			
		||||
glibtop_get_fsusage_l
 | 
			
		||||
glibtop_get_loadavg
 | 
			
		||||
glibtop_get_loadavg_l
 | 
			
		||||
glibtop_get_mem
 | 
			
		||||
glibtop_get_mem_l
 | 
			
		||||
glibtop_get_mountlist
 | 
			
		||||
glibtop_get_mountlist_l
 | 
			
		||||
glibtop_get_msg_limits
 | 
			
		||||
glibtop_get_msg_limits_l
 | 
			
		||||
glibtop_get_netlist
 | 
			
		||||
glibtop_get_netlist_l
 | 
			
		||||
glibtop_get_netload
 | 
			
		||||
glibtop_get_netload_l
 | 
			
		||||
glibtop_get_parameter_l
 | 
			
		||||
glibtop_get_ppp
 | 
			
		||||
glibtop_get_ppp_l
 | 
			
		||||
glibtop_get_proc_args
 | 
			
		||||
glibtop_get_proc_args_l
 | 
			
		||||
glibtop_get_proc_argv
 | 
			
		||||
glibtop_get_proc_argv_l
 | 
			
		||||
glibtop_get_proc_kernel
 | 
			
		||||
glibtop_get_proc_kernel_l
 | 
			
		||||
glibtop_get_proclist
 | 
			
		||||
glibtop_get_proclist_l
 | 
			
		||||
glibtop_get_proc_map
 | 
			
		||||
glibtop_get_proc_map_l
 | 
			
		||||
glibtop_get_proc_mem
 | 
			
		||||
glibtop_get_proc_mem_l
 | 
			
		||||
glibtop_get_proc_open_files
 | 
			
		||||
glibtop_get_proc_open_files_l
 | 
			
		||||
glibtop_get_proc_segment
 | 
			
		||||
glibtop_get_proc_segment_l
 | 
			
		||||
glibtop_get_proc_signal
 | 
			
		||||
glibtop_get_proc_signal_l
 | 
			
		||||
glibtop_get_proc_state
 | 
			
		||||
glibtop_get_proc_state_l
 | 
			
		||||
glibtop_get_proc_time
 | 
			
		||||
glibtop_get_proc_time_l
 | 
			
		||||
glibtop_get_proc_uid
 | 
			
		||||
glibtop_get_proc_uid_l
 | 
			
		||||
glibtop_get_proc_wd
 | 
			
		||||
glibtop_get_proc_wd_l
 | 
			
		||||
glibtop_get_sem_limits
 | 
			
		||||
glibtop_get_sem_limits_l
 | 
			
		||||
glibtop_get_shm_limits
 | 
			
		||||
glibtop_get_shm_limits_l
 | 
			
		||||
glibtop_get_proc_affinity
 | 
			
		||||
glibtop_get_proc_affinity_l
 | 
			
		||||
glibtop_get_swap
 | 
			
		||||
glibtop_get_swap_l
 | 
			
		||||
glibtop_get_sysdeps
 | 
			
		||||
glibtop_get_sysdeps_r
 | 
			
		||||
glibtop_get_sysinfo
 | 
			
		||||
glibtop_get_uptime
 | 
			
		||||
glibtop_get_uptime_l
 | 
			
		||||
glibtop_global_server
 | 
			
		||||
glibtop_init
 | 
			
		||||
glibtop_init_r
 | 
			
		||||
glibtop_internet_addr
 | 
			
		||||
glibtop_make_connection
 | 
			
		||||
glibtop_open_l
 | 
			
		||||
glibtop_server_features
 | 
			
		||||
glibtop_set_parameter_l
 | 
			
		||||
glibtop_sys_siglist
 | 
			
		||||
glibtop_mountlist_get_type
 | 
			
		||||
glibtop_mountentry_get_type
 | 
			
		||||
glibtop_open_files_entry_get_type
 | 
			
		||||
glibtop_proc_open_files_get_type
 | 
			
		||||
glibtop_map_entry_get_type
 | 
			
		||||
glibtop_proc_map_get_type
 | 
			
		||||
glibtop_get_type
 | 
			
		||||
Some files were not shown because too many files have changed in this diff Show More
		Reference in New Issue
	
	Block a user