Compare commits
	
		
			43 Commits
		
	
	
		
			LIBGTOP_2_
			...
			LIBGTOP_2_
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|  | 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 | 
							
								
								
									
										22
									
								
								NEWS
									
									
									
									
									
								
							
							
						
						
									
										22
									
								
								NEWS
									
									
									
									
									
								
							| @@ -1,3 +1,25 @@ | ||||
| 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. | ||||
|   | ||||
| @@ -3,8 +3,8 @@ dnl Configure script for the Gnome library | ||||
| dnl | ||||
|  | ||||
| m4_define([libgtop_major_version], [2]) | ||||
| m4_define([libgtop_minor_version], [20]) | ||||
| m4_define([libgtop_micro_version], [0]) | ||||
| m4_define([libgtop_minor_version], [21]) | ||||
| m4_define([libgtop_micro_version], [92]) | ||||
| m4_define([libgtop_version], [libgtop_major_version.libgtop_minor_version.libgtop_micro_version]) | ||||
|  | ||||
| dnl  increment if the interface has additions, changes, removals. | ||||
| @@ -12,7 +12,7 @@ m4_define([libgtop_current], [8]) | ||||
|  | ||||
| dnl  increment any time the source changes; set to | ||||
| dnl  0 if you increment CURRENT | ||||
| m4_define([libgtop_revision], [0]) | ||||
| m4_define([libgtop_revision], [1]) | ||||
|  | ||||
| dnl  increment if any interfaces have been added; set to 0 | ||||
| dnl  if any interfaces have been removed. removal has | ||||
| @@ -380,6 +380,7 @@ sysdeps/freebsd/Makefile | ||||
| sysdeps/solaris/Makefile | ||||
| sysdeps/aix/Makefile | ||||
| sysdeps/bsd/Makefile | ||||
| sysdeps/darwin/Makefile | ||||
| src/Makefile | ||||
| src/daemon/Makefile | ||||
| lib/Makefile | ||||
|   | ||||
| @@ -36,7 +36,7 @@ int main() | ||||
|   printf("%-20s %-10s %-10s %-10s %-10s\n", | ||||
| 	 "Filesystem", "Size", "Used", "Avail", "Use%"); | ||||
|  | ||||
|   entries = glibtop_get_mountlist(&buf, FALSE); | ||||
|   entries = glibtop_get_mountlist(&buf, TRUE); | ||||
|  | ||||
|   for(i = 0; i < buf.number; ++i) | ||||
|     { | ||||
|   | ||||
| @@ -108,10 +108,10 @@ main (int argc, char *argv []) | ||||
|  | ||||
| 			if (sizeof (void*) == 8) | ||||
| 				format = "%016lx-%016lx %016lx - " | ||||
| 					 "%02x:%02x %08lu - %4s - %s\n"; | ||||
| 					 "%02x:%02x %08lu - %5.5s - %s\n"; | ||||
| 			else | ||||
| 				format = "%08lx-%08lx %08lx - " | ||||
| 					 "%02x:%02x %08lu - %4s - %s\n"; | ||||
| 					 "%02x:%02x %08lu - %5.5s - %s\n"; | ||||
|  | ||||
| 			fprintf (stderr, format, | ||||
| 				 (unsigned long) maps [i].start, | ||||
|   | ||||
| @@ -1,130 +1,68 @@ | ||||
| glibtop_call_l | ||||
| glibtop_call_p | ||||
| glibtop_close | ||||
| glibtop_close_p | ||||
| glibtop_close_r | ||||
| glibtop_close_s | ||||
| glibtop_get_cpu | ||||
| glibtop_get_cpu_l | ||||
| glibtop_get_cpu_p | ||||
| glibtop_get_cpu_s | ||||
| glibtop_get_fsusage | ||||
| glibtop_get_fsusage_l | ||||
| glibtop_get_fsusage_p | ||||
| glibtop_get_fsusage_s | ||||
| glibtop_get_loadavg | ||||
| glibtop_get_loadavg_l | ||||
| glibtop_get_loadavg_p | ||||
| glibtop_get_loadavg_s | ||||
| glibtop_get_mem | ||||
| glibtop_get_mem_l | ||||
| glibtop_get_mem_p | ||||
| glibtop_get_mem_s | ||||
| glibtop_get_mountlist | ||||
| glibtop_get_mountlist_l | ||||
| glibtop_get_mountlist_p | ||||
| glibtop_get_mountlist_s | ||||
| glibtop_get_msg_limits | ||||
| glibtop_get_msg_limits_l | ||||
| glibtop_get_msg_limits_p | ||||
| glibtop_get_msg_limits_s | ||||
| glibtop_get_netlist | ||||
| glibtop_get_netlist_l | ||||
| glibtop_get_netlist_p | ||||
| glibtop_get_netlist_s | ||||
| glibtop_get_netload | ||||
| glibtop_get_netload_l | ||||
| glibtop_get_netload_p | ||||
| glibtop_get_netload_s | ||||
| glibtop_get_parameter_l | ||||
| glibtop_get_parameter_p | ||||
| glibtop_get_ppp | ||||
| glibtop_get_ppp_l | ||||
| glibtop_get_ppp_p | ||||
| glibtop_get_ppp_s | ||||
| glibtop_get_proc_args | ||||
| glibtop_get_proc_args_l | ||||
| glibtop_get_proc_args_p | ||||
| glibtop_get_proc_args_s | ||||
| glibtop_get_proc_argv | ||||
| glibtop_get_proc_argv_l | ||||
| glibtop_get_proc_argv_p | ||||
| glibtop_get_proc_kernel | ||||
| glibtop_get_proc_kernel_l | ||||
| glibtop_get_proc_kernel_p | ||||
| glibtop_get_proc_kernel_s | ||||
| glibtop_get_proclist | ||||
| glibtop_get_proclist_l | ||||
| glibtop_get_proclist_p | ||||
| glibtop_get_proclist_s | ||||
| glibtop_get_proc_map | ||||
| glibtop_get_proc_map_l | ||||
| glibtop_get_proc_map_p | ||||
| glibtop_get_proc_map_s | ||||
| glibtop_get_proc_mem | ||||
| glibtop_get_proc_mem_l | ||||
| glibtop_get_proc_mem_p | ||||
| glibtop_get_proc_mem_s | ||||
| glibtop_get_proc_open_files | ||||
| glibtop_get_proc_open_files_l | ||||
| glibtop_get_proc_open_files_p | ||||
| glibtop_get_proc_open_files_s | ||||
| glibtop_get_proc_segment | ||||
| glibtop_get_proc_segment_l | ||||
| glibtop_get_proc_segment_p | ||||
| glibtop_get_proc_segment_s | ||||
| glibtop_get_proc_signal | ||||
| glibtop_get_proc_signal_l | ||||
| glibtop_get_proc_signal_p | ||||
| glibtop_get_proc_signal_s | ||||
| glibtop_get_proc_state | ||||
| glibtop_get_proc_state_l | ||||
| glibtop_get_proc_state_p | ||||
| glibtop_get_proc_state_s | ||||
| glibtop_get_proc_time | ||||
| glibtop_get_proc_time_l | ||||
| glibtop_get_proc_time_p | ||||
| glibtop_get_proc_time_s | ||||
| glibtop_get_proc_uid | ||||
| glibtop_get_proc_uid_l | ||||
| glibtop_get_proc_uid_p | ||||
| glibtop_get_proc_uid_s | ||||
| glibtop_get_proc_wd | ||||
| glibtop_get_proc_wd_l | ||||
| glibtop_get_proc_wd_p | ||||
| glibtop_get_proc_wd_s | ||||
| glibtop_get_sem_limits | ||||
| glibtop_get_sem_limits_l | ||||
| glibtop_get_sem_limits_p | ||||
| glibtop_get_sem_limits_s | ||||
| glibtop_get_shm_limits | ||||
| glibtop_get_shm_limits_l | ||||
| glibtop_get_shm_limits_p | ||||
| glibtop_get_shm_limits_s | ||||
| glibtop_get_swap | ||||
| glibtop_get_swap_l | ||||
| glibtop_get_swap_p | ||||
| glibtop_get_swap_s | ||||
| glibtop_get_sysdeps | ||||
| glibtop_get_sysdeps_r | ||||
| glibtop_get_sysinfo | ||||
| glibtop_get_sysinfo_p | ||||
| glibtop_get_sysinfo_s | ||||
| glibtop_get_uptime | ||||
| glibtop_get_uptime_l | ||||
| glibtop_get_uptime_p | ||||
| glibtop_get_uptime_s | ||||
| glibtop_global_server | ||||
| glibtop_init | ||||
| glibtop_init_p | ||||
| glibtop_init_r | ||||
| glibtop_init_s | ||||
| glibtop_internet_addr | ||||
| glibtop_make_connection | ||||
| glibtop_open_l | ||||
| glibtop_open_p | ||||
| glibtop_open_s | ||||
| glibtop_server_features | ||||
| glibtop_set_parameter_l | ||||
| glibtop_set_parameter_p | ||||
| glibtop_sys_siglist | ||||
|   | ||||
| @@ -148,7 +148,7 @@ glibtop_open_l (glibtop *server, const char *program_name, | ||||
| 		if (nbytes != size) | ||||
| 			glibtop_error_r (server, | ||||
| 					 "Requested %u bytes but got %u.", | ||||
| 					 size, nbytes); | ||||
| 					 (unsigned)size, (unsigned)nbytes); | ||||
|  | ||||
| 		glibtop_read_l (server, nbytes, buffer); | ||||
|  | ||||
|   | ||||
| @@ -66,6 +66,8 @@ AC_DEFUN([GNOME_LIBGTOP_SYSDEPS],[ | ||||
| 	  libgtop_use_machine_h=no | ||||
| 	  libgtop_have_sysinfo=yes | ||||
| 	  libgtop_need_server=no | ||||
| 	  libgtop_sysdeps_private_mountlist=yes | ||||
| 	  libgtop_sysdeps_private_fsusage=yes | ||||
| 	  ;; | ||||
| 	netbsd*|openbsd*|bsdi*) | ||||
| 	  libgtop_sysdeps_dir=bsd | ||||
| @@ -92,6 +94,13 @@ AC_DEFUN([GNOME_LIBGTOP_SYSDEPS],[ | ||||
| 	  libgtop_have_sysinfo=yes | ||||
| 	  libgtop_postinstall='chgrp system $(bindir)/libgtop_server && chmod g+s $(bindir)/libgtop_server2' | ||||
| 	  ;; | ||||
| 	darwin*) | ||||
| 	  libgtop_sysdeps_dir=darwin | ||||
| 	  libgtop_use_machine_h=yes | ||||
| 	  libgtop_need_server=yes | ||||
| 	  libgtop_have_sysinfo=yes | ||||
| 	  libgtop_postinstall='chgrp kmem $(bindir)/libgtop_server && chmod g+s $(bindir)/libgtop_server2' | ||||
| 	  ;; | ||||
| 	*) | ||||
| 	  if test x$hacker_mode = xyes ; then | ||||
| 	    case "$host_os" in | ||||
| @@ -311,5 +320,7 @@ main (void) | ||||
| 	fi | ||||
|  | ||||
| 	AM_CONDITIONAL(NEED_LIBGTOP, test x$libgtop_need_server = xyes) | ||||
| 	AM_CONDITIONAL(LIBGTOP_SYSDEPS_PRIVATE_MOUNTLIST, test x$libgtop_sysdeps_private_mountlist = xyes) | ||||
| 	AM_CONDITIONAL(LIBGTOP_SYSDEPS_PRIVATE_FSUSAGE, test x$libgtop_sysdeps_private_fsusage = xyes) | ||||
| ]) | ||||
|  | ||||
|   | ||||
							
								
								
									
										79
									
								
								po/ChangeLog
									
									
									
									
									
								
							
							
						
						
									
										79
									
								
								po/ChangeLog
									
									
									
									
									
								
							| @@ -1,3 +1,82 @@ | ||||
| 2008-02-14  Chao-Hsiung Liao  <j_h_liau@yahoo.com.tw> | ||||
|  | ||||
|         * zh_HK.po: Updated Traditional Chinese translation(Hong Kong). | ||||
|         * zh_TW.po: Updated Traditional Chinese translation(Taiwan). | ||||
|  | ||||
| 2008-02-14  Pawan Chitrakar <chautari@gmail.com> | ||||
|  | ||||
| 	* ne.po: Updated Nepali Translation. | ||||
|  | ||||
| 2008-02-11  Petr Kovar  <pknbe@volny.cz> | ||||
|  | ||||
| 	* cs.po: Updated Czech translation by Lucas Lommer. | ||||
|  | ||||
| 2008-01-31  Djihed Afifi <djihed@gmail.com>  | ||||
|  | ||||
| 	* ar.po: Updated Arabic Translation by Khaled Hosny. | ||||
|  | ||||
| 2008-01-12  Djihed Afifi <djihed@gmail.com>  | ||||
|  | ||||
| 	* ar.po: Updated Arabic Translation by Khaled Hosny. | ||||
|  | ||||
| 2008-01-11  Inaki Larranaga Murgoitio  <dooteo@euskalgnu.org> | ||||
|  | ||||
| 	* eu.po: Updated Basque translation. | ||||
|  | ||||
| 2007-12-31  Yannig Marchegay <yannig@marchegay.org> | ||||
|  | ||||
| 	* oc.po: Updated Occitan translation. | ||||
|  | ||||
| 2007-12-28  Rahul Bhalerao <b.rahul.pm@gmail.com> | ||||
|  | ||||
| 	* mr.po: Added Marathi translations from Sandeep Shedmake. | ||||
| 	* LINGUAS: Added an entry for Marathi(mr). | ||||
|  | ||||
| 2007-11-28  Ignacio Casal Quinteiro   <nacho.resa@gmail.com> | ||||
|  | ||||
| 	* gl.po: Updated Galician Translation. | ||||
|  | ||||
| 2007-11-01  Kjartan Maraas  <kmaraas@gnome.org> | ||||
|  | ||||
| 	* nb.po: Updated Norwegian bokmål translation. | ||||
|  | ||||
| 2007-10-23  Djihed Afifi <djihed@gmail.com>  | ||||
|  | ||||
| 	* ar.po: Updated Arabic Translation by Youssef Chahibi. | ||||
|  | ||||
| 2007-10-21  Djihed Afifi <djihed@gmail.com>  | ||||
|  | ||||
| 	* ar.po: Updated Arabic Translation by Youssef Chahibi. | ||||
|  | ||||
| 2007-10-18  Matej Urbančič  <mateju@svn.gnome.org> | ||||
|  | ||||
| 	* sl.po: Updated Slovenian Translation. | ||||
|  | ||||
| 2007-10-15  Yair Hershkovitz  <yairhr@gmail.com> | ||||
|  | ||||
| 	* he.po: Updated Hebrew translation. | ||||
|  | ||||
| 2007-10-02  Alessio Frusciante  <algol@firenze.linux.it> | ||||
|  | ||||
| 	* it.po: Updated Italian translation. | ||||
|  | ||||
| 2007-09-18  Alexander Shopov  <ash@contact.bg> | ||||
|  | ||||
| 	* bg.po: Updated Bulgarian translation by | ||||
| 	Alexander Shopov <ash@contact.bg> | ||||
|  | ||||
| 2007-09-17  Artur Flinta  <aflinta@svn.gnome.org> | ||||
|  | ||||
| 	* pl.po: Updated Polish translation by GNOME PL Team. | ||||
|  | ||||
| 2007-09-16  Kenneth Nielsen  <k.nielsen81@gmail.com> | ||||
|  | ||||
| 	* da.po: Updated Danish translation | ||||
|  | ||||
| 2007-09-16  Gil Forcada  <gforcada@svn.gnome.org> | ||||
|  | ||||
| 	* ca.po: Updated Catalan translation. | ||||
|  | ||||
| 2007-09-16  Gintautas Miliauskas  <gintas@akl.lt> | ||||
|  | ||||
| 	* lt.po: Updated Lithuanian translation. | ||||
|   | ||||
| @@ -45,6 +45,7 @@ mi | ||||
| mk | ||||
| ml | ||||
| mn | ||||
| mr | ||||
| ms | ||||
| nb | ||||
| ne | ||||
|   | ||||
							
								
								
									
										71
									
								
								po/ar.po
									
									
									
									
									
								
							
							
						
						
									
										71
									
								
								po/ar.po
									
									
									
									
									
								
							| @@ -5,51 +5,57 @@ | ||||
| # Arafat Medini <lumina@silverpen.de>, 2002,2003. | ||||
| # Isam Bayazidi <bayazidi@arabeyes.org>, 2002. | ||||
| # Abdulaziz Al-Arfaj <alarfaj0@yahoo.com>, 2004. | ||||
| # Khaled Hosny <khaledhosny@eglug.org>, 2006. | ||||
| # Khaled Hosny <khaledhosny@eglug.org>, 2006, 2008. | ||||
| msgid "" | ||||
| msgstr "" | ||||
| "Project-Id-Version: libgtop.HEAD.ar\n" | ||||
| "Report-Msgid-Bugs-To: \n" | ||||
| "POT-Creation-Date: 2007-08-26 14:20-0700\n" | ||||
| "PO-Revision-Date: 2007-09-08 14:32-0000\n" | ||||
| "Last-Translator: Youssef Chahibi <chahibi@gmail.com>\n" | ||||
| "Language-Team: Arabic <support@arabeyes.org>\n" | ||||
| "PO-Revision-Date: 2008-01-11 23:29+0200\n" | ||||
| "Last-Translator: Khaled Hosny <khaledhosny@eglug.org>\n" | ||||
| "Language-Team: Arabic <doc@eglug.org>\n" | ||||
| "MIME-Version: 1.0\n" | ||||
| "Content-Type: text/plain; charset=UTF-8\n" | ||||
| "Content-Transfer-Encoding: 8bit\n" | ||||
| "X-Generator: KBabel 1.11.4\n" | ||||
| "Plural-Forms: Plural-Forms: nplurals=4; plural=n==1 ? 0 : n==2 ? 1 : n>=3 && n<=10 ? 2 : 3\n" | ||||
| "Plural-Forms:  nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n>=3 && n<=10 ? 3 : n>=11 && n<=99 ? 4 : 5;\n" | ||||
|  | ||||
| #: ../lib/read.c:51 | ||||
| #, c-format | ||||
| msgid "read %d byte" | ||||
| msgid_plural "read %d bytes" | ||||
| msgstr[0] "اقرأ بايت واحدة" | ||||
| msgstr[1] "اقرأ بايتين" | ||||
| msgstr[2] "اقرأ %d بايتات" | ||||
| msgstr[3] "اقرأ %d بايت" | ||||
| msgstr[0] "قرأ صفر بايت" | ||||
| msgstr[1] "قرأ بايت واحدة" | ||||
| msgstr[2] "قرأ بايتين" | ||||
| msgstr[3] "قرأ %d بايتات" | ||||
| msgstr[4] "قرأ %d بايت" | ||||
| msgstr[5] "قرأ %d بايت" | ||||
|  | ||||
| #: ../lib/read_data.c:51 | ||||
| msgid "read data size" | ||||
| msgstr "اقرأ حجم البيانات" | ||||
| msgstr "حجم البيانات المقروءة" | ||||
|  | ||||
| #: ../lib/read_data.c:70 | ||||
| #, c-format | ||||
| msgid "read %lu byte of data" | ||||
| msgid_plural "read %lu bytes of data" | ||||
| msgstr[0] "اقرأ بايت واحدة " | ||||
| msgstr[1] "اقرأ بايتين" | ||||
| msgstr[2] "اقرأ %lu بايتات" | ||||
| msgstr[3] "اقرأ %lu بايت" | ||||
| msgstr[0] "قرأ صفر بايت من البيانات" | ||||
| msgstr[1] "قرأ بايت واحدة من البيانات" | ||||
| msgstr[2] "قرأ بايتين من البيانات" | ||||
| msgstr[3] "قرأ %lu بايتات من البيانات" | ||||
| msgstr[4] "قرأ %lu بايت من البيانات" | ||||
| msgstr[5] "قرأ %lu بايت من البيانات" | ||||
|  | ||||
| #: ../lib/write.c:51 | ||||
| #, c-format | ||||
| msgid "wrote %d byte" | ||||
| msgid_plural "wrote %d bytes" | ||||
| msgstr[0] "كتابة بايت واحدة" | ||||
| msgstr[1] "كتابة بايتين" | ||||
| msgstr[2] "كتابة %d بايتات" | ||||
| msgstr[3] "كتابة %d بايت" | ||||
| msgstr[0] "كتب صفر بايت" | ||||
| msgstr[1] "كتب بايت واحدة" | ||||
| msgstr[2] "كتب بايتين" | ||||
| msgstr[3] "كتب %d بايتات" | ||||
| msgstr[4] "كتب %d بايت" | ||||
| msgstr[5] "كتب %d بايت" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:458 | ||||
| msgid "Enable debugging" | ||||
| @@ -57,7 +63,7 @@ msgstr "فعّل التنقيح" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:460 | ||||
| msgid "Enable verbose output" | ||||
| msgstr "فعّل خرْج مسهِب" | ||||
| msgstr "فعّل الخرْج المسهِب" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:462 | ||||
| msgid "Don't fork into background" | ||||
| @@ -75,7 +81,7 @@ msgstr "شغّل '%s --help' لرؤية قائمة كاملة لخيارات س | ||||
| #: ../sysdeps/osf1/siglist.c:27 | ||||
| #: ../sysdeps/sun4/siglist.c:27 | ||||
| msgid "Hangup" | ||||
| msgstr "علق" | ||||
| msgstr "علّق" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:28 | ||||
| #: ../sysdeps/sun4/siglist.c:28 | ||||
| @@ -95,7 +101,7 @@ msgstr "توجيه ممنوع" | ||||
| #: ../sysdeps/osf1/siglist.c:31 | ||||
| #: ../sysdeps/sun4/siglist.c:31 | ||||
| msgid "Trace trap" | ||||
| msgstr "فخ رسم" | ||||
| msgstr "تتبع الأثر" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:32 | ||||
| #: ../sysdeps/sun4/siglist.c:32 | ||||
| @@ -120,7 +126,7 @@ msgstr "اقتل" | ||||
| #: ../sysdeps/osf1/siglist.c:36 | ||||
| #: ../sysdeps/sun4/siglist.c:36 | ||||
| msgid "Bus error" | ||||
| msgstr "خطأ ناقل" | ||||
| msgstr "خطأ في ناقل" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:37 | ||||
| #: ../sysdeps/sun4/siglist.c:37 | ||||
| @@ -130,7 +136,7 @@ msgstr "انتهاك اﻻنقسام" | ||||
| #: ../sysdeps/osf1/siglist.c:38 | ||||
| #: ../sysdeps/sun4/siglist.c:38 | ||||
| msgid "Bad argument to system call" | ||||
| msgstr "متغيّر سيء لنداء النظام" | ||||
| msgstr "معطى سيء لنداء النظام" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:39 | ||||
| #: ../sysdeps/sun4/siglist.c:39 | ||||
| @@ -160,7 +166,7 @@ msgstr "قف" | ||||
| #: ../sysdeps/osf1/siglist.c:44 | ||||
| #: ../sysdeps/sun4/siglist.c:44 | ||||
| msgid "Keyboard stop" | ||||
| msgstr "أوقف لوحة المفاتيح" | ||||
| msgstr "إيقاف من لوحة المفاتيح" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:45 | ||||
| #: ../sysdeps/sun4/siglist.c:45 | ||||
| @@ -185,7 +191,7 @@ msgstr "كتابة لـ tty في الخلفية" | ||||
| #: ../sysdeps/osf1/siglist.c:49 | ||||
| #: ../sysdeps/sun4/siglist.c:49 | ||||
| msgid "I/O now possible" | ||||
| msgstr "دخْل/خرْج ممكن الآن" | ||||
| msgstr "الدخْل/الخرْج ممكن الآن" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:50 | ||||
| #: ../sysdeps/sun4/siglist.c:50 | ||||
| @@ -205,7 +211,7 @@ msgstr "ساعة تنبيه تخيّلية" | ||||
| #: ../sysdeps/osf1/siglist.c:53 | ||||
| #: ../sysdeps/sun4/siglist.c:53 | ||||
| msgid "Profiling alarm clock" | ||||
| msgstr "كتابة لمحة عن ساعة التنبيه" | ||||
| msgstr "تشخيص ساعة التنبيه" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:54 | ||||
| #: ../sysdeps/sun4/siglist.c:54 | ||||
| @@ -220,19 +226,10 @@ msgstr "طلب معلومات" | ||||
| #: ../sysdeps/osf1/siglist.c:56 | ||||
| #: ../sysdeps/sun4/siglist.c:56 | ||||
| msgid "User defined signal 1" | ||||
| msgstr "اشارة 1 معرفة من طرف المستخدم" | ||||
| msgstr "إشارة 1 معرفة من طرف المستخدم" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:57 | ||||
| #: ../sysdeps/sun4/siglist.c:57 | ||||
| msgid "User defined signal 2" | ||||
| msgstr "اشارة 2 معرفة من طرف المستخدم" | ||||
|  | ||||
| #~ msgid "DEBUG" | ||||
| #~ msgstr "DEBUG" | ||||
| #~ msgid "VERBOSE" | ||||
| #~ msgstr "VERBOSE" | ||||
| #~ msgid "NO-DAEMON" | ||||
| #~ msgstr "NO-DAEMON" | ||||
| #~ msgid "INETD" | ||||
| #~ msgstr "INETD" | ||||
| msgstr "إشارة 2 معرفة من طرف المستخدم" | ||||
|  | ||||
|   | ||||
							
								
								
									
										142
									
								
								po/bg.po
									
									
									
									
									
								
							
							
						
						
									
										142
									
								
								po/bg.po
									
									
									
									
									
								
							| @@ -1,210 +1,190 @@ | ||||
| # Bulgarian translation for libgtop | ||||
| # Copyright (C) 2002, 2004 Free Software Foundation, Inc. | ||||
| # Bulgarian translation for libgtop po-file | ||||
| # Copyright (C) 2002, 2004, 2005, 2007 Free Software Foundation, Inc. | ||||
| # Borislav Aleksandrov <B.Aleksandrov@cnsys.bg>, 2002. | ||||
| # Yanko Kaneti <yaneti@declera.com>, 2002. | ||||
| # Rostislav Raykov <zbrox@i-space.org>, 2004. | ||||
| # Vladimir Petkov <vpetkov@i-space.org>, 2005. | ||||
| # Alexander Shopov <ash@contact.bg>, 2007. | ||||
| # | ||||
| msgid "" | ||||
| msgstr "" | ||||
| "Project-Id-Version: libgtop\n" | ||||
| "Project-Id-Version: libgtop trunk\n" | ||||
| "Report-Msgid-Bugs-To: \n" | ||||
| "POT-Creation-Date: 2005-09-25 18:15+0200\n" | ||||
| "PO-Revision-Date: 2005-07-28 14:04+0300\n" | ||||
| "Last-Translator: Rostislav Raykov <zbrox@i-space.org>\n" | ||||
| "Language-Team: Bulgarian <dict@linux.zonebg.com>\n" | ||||
| "POT-Creation-Date: 2007-09-18 10:43+0300\n" | ||||
| "PO-Revision-Date: 2007-09-18 10:43+0300\n" | ||||
| "Last-Translator: Alexander Shopov <ash@contact.bg>\n" | ||||
| "Language-Team: Bulgarian <dict@fsa-bg.org>\n" | ||||
| "MIME-Version: 1.0\n" | ||||
| "Content-Type: text/plain; charset=UTF-8\n" | ||||
| "Content-Transfer-Encoding: 8bit\n" | ||||
| "Plural-Forms: nplurals=2; plural=n != 1;\n" | ||||
|  | ||||
| #: lib/read.c:65 | ||||
| #: ../lib/read.c:51 | ||||
| #, c-format | ||||
| msgid "read %d byte" | ||||
| msgid_plural "read %d bytes" | ||||
| msgstr[0] "прочетен %d байт" | ||||
| msgstr[1] "прочетени %d байта" | ||||
|  | ||||
| #: lib/read_data.c:53 | ||||
| #: ../lib/read_data.c:51 | ||||
| msgid "read data size" | ||||
| msgstr "размер прочетени данни" | ||||
| msgstr "прочетен е размерът на данните" | ||||
|  | ||||
| #: lib/read_data.c:72 | ||||
| #: ../lib/read_data.c:70 | ||||
| #, c-format | ||||
| msgid "read %lu byte of data" | ||||
| msgid_plural "read %lu bytes of data" | ||||
| msgstr[0] "прочетен %lu байт данни" | ||||
| msgstr[1] "прочетени %lu байта данни" | ||||
|  | ||||
| #: lib/write.c:52 | ||||
| #: ../lib/write.c:51 | ||||
| #, c-format | ||||
| msgid "wrote %d byte" | ||||
| msgid_plural "wrote %d bytes" | ||||
| msgstr[0] "записан %d байт" | ||||
| msgstr[1] "записани %d байта" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:460 | ||||
| #: ../src/daemon/gnuserv.c:458 | ||||
| msgid "Enable debugging" | ||||
| msgstr "Включване на дебъгване" | ||||
| msgstr "Включване на изчистване на грешките" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:460 | ||||
| msgid "DEBUG" | ||||
| msgstr "DEBUG" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:462 | ||||
| #: ../src/daemon/gnuserv.c:460 | ||||
| msgid "Enable verbose output" | ||||
| msgstr "Включен подробен изход" | ||||
| msgstr "Включване на подробен изход" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:462 | ||||
| msgid "VERBOSE" | ||||
| msgstr "ПОДРОБЕН" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:464 | ||||
| #: ../src/daemon/gnuserv.c:462 | ||||
| msgid "Don't fork into background" | ||||
| msgstr "Не се поражда процес във фонов режим" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:464 | ||||
| msgid "NO-DAEMON" | ||||
| msgstr "БЕЗ-ДЕМОН" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:466 | ||||
| #: ../src/daemon/gnuserv.c:464 | ||||
| msgid "Invoked from inetd" | ||||
| msgstr "Извикан от inetd" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:466 | ||||
| msgid "INETD" | ||||
| msgstr "INETD" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:500 | ||||
| #: ../src/daemon/gnuserv.c:498 | ||||
| #, c-format | ||||
| msgid "" | ||||
| "Error on option %s: %s.\n" | ||||
| "Run '%s --help' to see a full list of available command line options.\n" | ||||
| msgstr "" | ||||
| "Грешка в опция %s: %s.\n" | ||||
| "Изпълнете '%s --help' за да видите пълния списък от налични за командата " | ||||
| "опции.\n" | ||||
| msgid "Run '%s --help' to see a full list of available command line options.\n" | ||||
| msgstr "Изпълнете „%s --help“ за пълния списък от опции за командата.\n" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:28 sysdeps/sun4/siglist.c:28 | ||||
| #: ../sysdeps/osf1/siglist.c:27 ../sysdeps/sun4/siglist.c:27 | ||||
| msgid "Hangup" | ||||
| msgstr "Разпадане" | ||||
| msgstr "Затваряне на връзката" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:29 sysdeps/sun4/siglist.c:29 | ||||
| #: ../sysdeps/osf1/siglist.c:28 ../sysdeps/sun4/siglist.c:28 | ||||
| msgid "Interrupt" | ||||
| msgstr "Прекъсване" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:30 sysdeps/sun4/siglist.c:30 | ||||
| #: ../sysdeps/osf1/siglist.c:29 ../sysdeps/sun4/siglist.c:29 | ||||
| msgid "Quit" | ||||
| msgstr "Напускане" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:31 sysdeps/sun4/siglist.c:31 | ||||
| #: ../sysdeps/osf1/siglist.c:30 ../sysdeps/sun4/siglist.c:30 | ||||
| msgid "Illegal instruction" | ||||
| msgstr "Недопустима инструкция" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:32 sysdeps/sun4/siglist.c:32 | ||||
| #: ../sysdeps/osf1/siglist.c:31 ../sysdeps/sun4/siglist.c:31 | ||||
| msgid "Trace trap" | ||||
| msgstr "Точка на прекъсване" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:33 sysdeps/sun4/siglist.c:33 | ||||
| #: ../sysdeps/osf1/siglist.c:32 ../sysdeps/sun4/siglist.c:32 | ||||
| msgid "Abort" | ||||
| msgstr "Прекъсване" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:34 sysdeps/sun4/siglist.c:34 | ||||
| #: ../sysdeps/osf1/siglist.c:33 ../sysdeps/sun4/siglist.c:33 | ||||
| msgid "EMT error" | ||||
| msgstr "EMT грешка" | ||||
| msgstr "Грешка на емулацията" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:35 sysdeps/sun4/siglist.c:35 | ||||
| #: ../sysdeps/osf1/siglist.c:34 ../sysdeps/sun4/siglist.c:34 | ||||
| msgid "Floating-point exception" | ||||
| msgstr "Изключение с плаваща запетая" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:36 sysdeps/sun4/siglist.c:36 | ||||
| #: ../sysdeps/osf1/siglist.c:35 ../sysdeps/sun4/siglist.c:35 | ||||
| msgid "Kill" | ||||
| msgstr "Убиване" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:37 sysdeps/sun4/siglist.c:37 | ||||
| #: ../sysdeps/osf1/siglist.c:36 ../sysdeps/sun4/siglist.c:36 | ||||
| msgid "Bus error" | ||||
| msgstr "Грешка в шината" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:38 sysdeps/sun4/siglist.c:38 | ||||
| #: ../sysdeps/osf1/siglist.c:37 ../sysdeps/sun4/siglist.c:37 | ||||
| msgid "Segmentation violation" | ||||
| msgstr "Сегментация" | ||||
| msgstr "Надхвърляне на сегмента" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:39 sysdeps/sun4/siglist.c:39 | ||||
| #: ../sysdeps/osf1/siglist.c:38 ../sysdeps/sun4/siglist.c:38 | ||||
| msgid "Bad argument to system call" | ||||
| msgstr "Грешен аргумент на системно извикване" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:40 sysdeps/sun4/siglist.c:40 | ||||
| #: ../sysdeps/osf1/siglist.c:39 ../sysdeps/sun4/siglist.c:39 | ||||
| msgid "Broken pipe" | ||||
| msgstr "Нарушен програмен канал" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:41 sysdeps/sun4/siglist.c:41 | ||||
| #: ../sysdeps/osf1/siglist.c:40 ../sysdeps/sun4/siglist.c:40 | ||||
| msgid "Alarm clock" | ||||
| msgstr "Алармен часовник" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:42 sysdeps/sun4/siglist.c:42 | ||||
| #: ../sysdeps/osf1/siglist.c:41 ../sysdeps/sun4/siglist.c:41 | ||||
| msgid "Termination" | ||||
| msgstr "Завършване" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:43 sysdeps/sun4/siglist.c:43 | ||||
| #: ../sysdeps/osf1/siglist.c:42 ../sysdeps/sun4/siglist.c:42 | ||||
| msgid "Urgent condition on socket" | ||||
| msgstr "Неотложно състояние на socket" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:44 sysdeps/sun4/siglist.c:44 | ||||
| #: ../sysdeps/osf1/siglist.c:43 ../sysdeps/sun4/siglist.c:43 | ||||
| msgid "Stop" | ||||
| msgstr "Стоп" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:45 sysdeps/sun4/siglist.c:45 | ||||
| #: ../sysdeps/osf1/siglist.c:44 ../sysdeps/sun4/siglist.c:44 | ||||
| msgid "Keyboard stop" | ||||
| msgstr "Стоп от клавиатурата" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:46 sysdeps/sun4/siglist.c:46 | ||||
| #: ../sysdeps/osf1/siglist.c:45 ../sysdeps/sun4/siglist.c:45 | ||||
| msgid "Continue" | ||||
| msgstr "Продължаване" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:47 sysdeps/sun4/siglist.c:47 | ||||
| #: ../sysdeps/osf1/siglist.c:46 ../sysdeps/sun4/siglist.c:46 | ||||
| msgid "Child status has changed" | ||||
| msgstr "Промяна в състоянието на дъщерни процеси" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:48 sysdeps/sun4/siglist.c:48 | ||||
| #: ../sysdeps/osf1/siglist.c:47 ../sysdeps/sun4/siglist.c:47 | ||||
| msgid "Background read from tty" | ||||
| msgstr "Фоново четене от tty" | ||||
| msgstr "Фоново четене от терминал" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:49 sysdeps/sun4/siglist.c:49 | ||||
| #: ../sysdeps/osf1/siglist.c:48 ../sysdeps/sun4/siglist.c:48 | ||||
| msgid "Background write to tty" | ||||
| msgstr "Фонов запис в tty" | ||||
| msgstr "Фонов запис в терминал" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:50 sysdeps/sun4/siglist.c:50 | ||||
| #: ../sysdeps/osf1/siglist.c:49 ../sysdeps/sun4/siglist.c:49 | ||||
| msgid "I/O now possible" | ||||
| msgstr "I/O сега е възможно" | ||||
| msgstr "Възможен е вх./изх." | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:51 sysdeps/sun4/siglist.c:51 | ||||
| #: ../sysdeps/osf1/siglist.c:50 ../sysdeps/sun4/siglist.c:50 | ||||
| msgid "CPU limit exceeded" | ||||
| msgstr "Превишено ограничение за CPU" | ||||
| msgstr "Превишен процесорен лимит" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:52 sysdeps/sun4/siglist.c:52 | ||||
| #: ../sysdeps/osf1/siglist.c:51 ../sysdeps/sun4/siglist.c:51 | ||||
| msgid "File size limit exceeded" | ||||
| msgstr "Превишено ограничение за размер на файл" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:53 sysdeps/sun4/siglist.c:53 | ||||
| #: ../sysdeps/osf1/siglist.c:52 ../sysdeps/sun4/siglist.c:52 | ||||
| msgid "Virtual alarm clock" | ||||
| msgstr "Виртуален алармен часовник" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:54 sysdeps/sun4/siglist.c:54 | ||||
| #: ../sysdeps/osf1/siglist.c:53 ../sysdeps/sun4/siglist.c:53 | ||||
| msgid "Profiling alarm clock" | ||||
| msgstr "Профилиран алармен часовник" | ||||
| msgstr "Засичан алармен часовник" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:55 sysdeps/sun4/siglist.c:55 | ||||
| #: ../sysdeps/osf1/siglist.c:54 ../sysdeps/sun4/siglist.c:54 | ||||
| msgid "Window size change" | ||||
| msgstr "Променяне размера на прозорец" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:56 sysdeps/sun4/siglist.c:56 | ||||
| #: ../sysdeps/osf1/siglist.c:55 ../sysdeps/sun4/siglist.c:55 | ||||
| msgid "Information request" | ||||
| msgstr "Заявка за данни" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:57 sysdeps/sun4/siglist.c:57 | ||||
| #: ../sysdeps/osf1/siglist.c:56 ../sysdeps/sun4/siglist.c:56 | ||||
| msgid "User defined signal 1" | ||||
| msgstr "Сигнал на потребител 1" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:58 sysdeps/sun4/siglist.c:58 | ||||
| #: ../sysdeps/osf1/siglist.c:57 ../sysdeps/sun4/siglist.c:57 | ||||
| msgid "User defined signal 2" | ||||
| msgstr "Сигнал на потребител 2" | ||||
|   | ||||
							
								
								
									
										119
									
								
								po/ca.po
									
									
									
									
									
								
							
							
						
						
									
										119
									
								
								po/ca.po
									
									
									
									
									
								
							| @@ -7,7 +7,7 @@ msgid "" | ||||
| msgstr "" | ||||
| "Project-Id-Version: libgtop 2.9.91\n" | ||||
| "Report-Msgid-Bugs-To: \n" | ||||
| "POT-Creation-Date: 2005-09-25 18:15+0200\n" | ||||
| "POT-Creation-Date: 2007-09-16 22:33+0200\n" | ||||
| "PO-Revision-Date: 2005-09-04 01:16+0200\n" | ||||
| "Last-Translator: Jordi Mallach <jordi@sindominio.net>\n" | ||||
| "Language-Team: Catalan <tradgnome@softcatala.org>\n" | ||||
| @@ -16,193 +16,186 @@ msgstr "" | ||||
| "Content-Transfer-Encoding: 8bit\n" | ||||
| "Plural-Forms: nplurals=2; plural=n!=1;\n" | ||||
|  | ||||
| #: lib/read.c:65 | ||||
| #: ../lib/read.c:51 | ||||
| #, c-format | ||||
| msgid "read %d byte" | ||||
| msgid_plural "read %d bytes" | ||||
| msgstr[0] "s'ha llegit %d octet" | ||||
| msgstr[1] "s'ha llegit %d octets" | ||||
|  | ||||
| #: lib/read_data.c:53 | ||||
| #: ../lib/read_data.c:51 | ||||
| msgid "read data size" | ||||
| msgstr "llegeix la mida de les dades" | ||||
|  | ||||
| #: lib/read_data.c:72 | ||||
| #: ../lib/read_data.c:70 | ||||
| #, c-format | ||||
| msgid "read %lu byte of data" | ||||
| msgid_plural "read %lu bytes of data" | ||||
| msgstr[0] "s'ha llegit %lu octet de dades" | ||||
| msgstr[1] "s'ha llegit %lu octets de dades" | ||||
|  | ||||
| #: lib/write.c:52 | ||||
| #: ../lib/write.c:51 | ||||
| #, c-format | ||||
| msgid "wrote %d byte" | ||||
| msgid_plural "wrote %d bytes" | ||||
| msgstr[0] "s'ha escrit %d octet" | ||||
| msgstr[1] "s'ha escrit %d octets" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:460 | ||||
| #: ../src/daemon/gnuserv.c:458 | ||||
| msgid "Enable debugging" | ||||
| msgstr "Activa la depuració" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:460 | ||||
| msgid "DEBUG" | ||||
| msgstr "DEPURACIÓ" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:462 | ||||
| #: ../src/daemon/gnuserv.c:460 | ||||
| msgid "Enable verbose output" | ||||
| msgstr "Activa la sortida detallada" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:462 | ||||
| msgid "VERBOSE" | ||||
| msgstr "DETALLA" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:464 | ||||
| #: ../src/daemon/gnuserv.c:462 | ||||
| msgid "Don't fork into background" | ||||
| msgstr "No bifurquis al segon pla" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:464 | ||||
| msgid "NO-DAEMON" | ||||
| msgstr "SENSE DIMONI" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:466 | ||||
| #: ../src/daemon/gnuserv.c:464 | ||||
| msgid "Invoked from inetd" | ||||
| msgstr "Ha estat cridat des d'inetd" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:466 | ||||
| msgid "INETD" | ||||
| msgstr "INETD" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:500 | ||||
| #: ../src/daemon/gnuserv.c:498 | ||||
| #, c-format | ||||
| msgid "" | ||||
| "Error on option %s: %s.\n" | ||||
| "Run '%s --help' to see a full list of available command line options.\n" | ||||
| msgid "Run '%s --help' to see a full list of available command line options.\n" | ||||
| msgstr "" | ||||
| "S'ha produït un error en l'opció %s: %s.\n" | ||||
| "Executeu '%s --ajuda' per a veure una llista completa de les opcions de " | ||||
| "línies d'ordre disponibles.\n" | ||||
| "Executeu «%s --help»  per a veure una llista completa de les opcions " | ||||
| "disponibles de la línia d'ordres.\n" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:28 sysdeps/sun4/siglist.c:28 | ||||
| #: ../sysdeps/osf1/siglist.c:27 ../sysdeps/sun4/siglist.c:27 | ||||
| msgid "Hangup" | ||||
| msgstr "Termina" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:29 sysdeps/sun4/siglist.c:29 | ||||
| #: ../sysdeps/osf1/siglist.c:28 ../sysdeps/sun4/siglist.c:28 | ||||
| msgid "Interrupt" | ||||
| msgstr "Interromp" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:30 sysdeps/sun4/siglist.c:30 | ||||
| #: ../sysdeps/osf1/siglist.c:29 ../sysdeps/sun4/siglist.c:29 | ||||
| msgid "Quit" | ||||
| msgstr "Surt" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:31 sysdeps/sun4/siglist.c:31 | ||||
| #: ../sysdeps/osf1/siglist.c:30 ../sysdeps/sun4/siglist.c:30 | ||||
| msgid "Illegal instruction" | ||||
| msgstr "Instrucció il·legal" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:32 sysdeps/sun4/siglist.c:32 | ||||
| #: ../sysdeps/osf1/siglist.c:31 ../sysdeps/sun4/siglist.c:31 | ||||
| msgid "Trace trap" | ||||
| msgstr "Captura traça" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:33 sysdeps/sun4/siglist.c:33 | ||||
| #: ../sysdeps/osf1/siglist.c:32 ../sysdeps/sun4/siglist.c:32 | ||||
| msgid "Abort" | ||||
| msgstr "Avorta" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:34 sysdeps/sun4/siglist.c:34 | ||||
| #: ../sysdeps/osf1/siglist.c:33 ../sysdeps/sun4/siglist.c:33 | ||||
| msgid "EMT error" | ||||
| msgstr "Error EMT" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:35 sysdeps/sun4/siglist.c:35 | ||||
| #: ../sysdeps/osf1/siglist.c:34 ../sysdeps/sun4/siglist.c:34 | ||||
| msgid "Floating-point exception" | ||||
| msgstr "Excepció de coma flotant" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:36 sysdeps/sun4/siglist.c:36 | ||||
| #: ../sysdeps/osf1/siglist.c:35 ../sysdeps/sun4/siglist.c:35 | ||||
| msgid "Kill" | ||||
| msgstr "Mata" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:37 sysdeps/sun4/siglist.c:37 | ||||
| #: ../sysdeps/osf1/siglist.c:36 ../sysdeps/sun4/siglist.c:36 | ||||
| msgid "Bus error" | ||||
| msgstr "Error de bus" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:38 sysdeps/sun4/siglist.c:38 | ||||
| #: ../sysdeps/osf1/siglist.c:37 ../sysdeps/sun4/siglist.c:37 | ||||
| msgid "Segmentation violation" | ||||
| msgstr "Violació de segment" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:39 sysdeps/sun4/siglist.c:39 | ||||
| #: ../sysdeps/osf1/siglist.c:38 ../sysdeps/sun4/siglist.c:38 | ||||
| msgid "Bad argument to system call" | ||||
| msgstr "Argument erroni a una crida al sistema" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:40 sysdeps/sun4/siglist.c:40 | ||||
| #: ../sysdeps/osf1/siglist.c:39 ../sysdeps/sun4/siglist.c:39 | ||||
| msgid "Broken pipe" | ||||
| msgstr "Conducte trencat" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:41 sysdeps/sun4/siglist.c:41 | ||||
| #: ../sysdeps/osf1/siglist.c:40 ../sysdeps/sun4/siglist.c:40 | ||||
| msgid "Alarm clock" | ||||
| msgstr "Alarma del rellotge" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:42 sysdeps/sun4/siglist.c:42 | ||||
| #: ../sysdeps/osf1/siglist.c:41 ../sysdeps/sun4/siglist.c:41 | ||||
| msgid "Termination" | ||||
| msgstr "Terminació" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:43 sysdeps/sun4/siglist.c:43 | ||||
| #: ../sysdeps/osf1/siglist.c:42 ../sysdeps/sun4/siglist.c:42 | ||||
| msgid "Urgent condition on socket" | ||||
| msgstr "Condició urgent en socket" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:44 sysdeps/sun4/siglist.c:44 | ||||
| #: ../sysdeps/osf1/siglist.c:43 ../sysdeps/sun4/siglist.c:43 | ||||
| msgid "Stop" | ||||
| msgstr "Parada" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:45 sysdeps/sun4/siglist.c:45 | ||||
| #: ../sysdeps/osf1/siglist.c:44 ../sysdeps/sun4/siglist.c:44 | ||||
| msgid "Keyboard stop" | ||||
| msgstr "Parada de teclat" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:46 sysdeps/sun4/siglist.c:46 | ||||
| #: ../sysdeps/osf1/siglist.c:45 ../sysdeps/sun4/siglist.c:45 | ||||
| msgid "Continue" | ||||
| msgstr "Continua" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:47 sysdeps/sun4/siglist.c:47 | ||||
| #: ../sysdeps/osf1/siglist.c:46 ../sysdeps/sun4/siglist.c:46 | ||||
| msgid "Child status has changed" | ||||
| msgstr "L'estat del fill ha canviat" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:48 sysdeps/sun4/siglist.c:48 | ||||
| #: ../sysdeps/osf1/siglist.c:47 ../sysdeps/sun4/siglist.c:47 | ||||
| msgid "Background read from tty" | ||||
| msgstr "Lectura de tty en segon pla" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:49 sysdeps/sun4/siglist.c:49 | ||||
| #: ../sysdeps/osf1/siglist.c:48 ../sysdeps/sun4/siglist.c:48 | ||||
| msgid "Background write to tty" | ||||
| msgstr "Escriptura a tty en segon pla" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:50 sysdeps/sun4/siglist.c:50 | ||||
| #: ../sysdeps/osf1/siglist.c:49 ../sysdeps/sun4/siglist.c:49 | ||||
| msgid "I/O now possible" | ||||
| msgstr "E/S ara és possible" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:51 sysdeps/sun4/siglist.c:51 | ||||
| #: ../sysdeps/osf1/siglist.c:50 ../sysdeps/sun4/siglist.c:50 | ||||
| msgid "CPU limit exceeded" | ||||
| msgstr "Límit de CPU excedit" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:52 sysdeps/sun4/siglist.c:52 | ||||
| #: ../sysdeps/osf1/siglist.c:51 ../sysdeps/sun4/siglist.c:51 | ||||
| msgid "File size limit exceeded" | ||||
| msgstr "Límit de mida de fitxer excedit" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:53 sysdeps/sun4/siglist.c:53 | ||||
| #: ../sysdeps/osf1/siglist.c:52 ../sysdeps/sun4/siglist.c:52 | ||||
| msgid "Virtual alarm clock" | ||||
| msgstr "Alarma del rellotge virtual" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:54 sysdeps/sun4/siglist.c:54 | ||||
| #: ../sysdeps/osf1/siglist.c:53 ../sysdeps/sun4/siglist.c:53 | ||||
| msgid "Profiling alarm clock" | ||||
| msgstr "Alarma del rellotge perfilada" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:55 sysdeps/sun4/siglist.c:55 | ||||
| #: ../sysdeps/osf1/siglist.c:54 ../sysdeps/sun4/siglist.c:54 | ||||
| msgid "Window size change" | ||||
| msgstr "Canvi de la mida de la finestra" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:56 sysdeps/sun4/siglist.c:56 | ||||
| #: ../sysdeps/osf1/siglist.c:55 ../sysdeps/sun4/siglist.c:55 | ||||
| msgid "Information request" | ||||
| msgstr "Petició d'informació" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:57 sysdeps/sun4/siglist.c:57 | ||||
| #: ../sysdeps/osf1/siglist.c:56 ../sysdeps/sun4/siglist.c:56 | ||||
| msgid "User defined signal 1" | ||||
| msgstr "Senyal 1 definit per l'usuari" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:58 sysdeps/sun4/siglist.c:58 | ||||
| #: ../sysdeps/osf1/siglist.c:57 ../sysdeps/sun4/siglist.c:57 | ||||
| msgid "User defined signal 2" | ||||
| msgstr "Senyal 2 definit per l'usuari" | ||||
|  | ||||
| #~ msgid "DEBUG" | ||||
| #~ msgstr "DEPURACIÓ" | ||||
|  | ||||
| #~ msgid "VERBOSE" | ||||
| #~ msgstr "DETALLA" | ||||
|  | ||||
| #~ msgid "NO-DAEMON" | ||||
| #~ msgstr "SENSE DIMONI" | ||||
|  | ||||
| #~ msgid "INETD" | ||||
| #~ msgstr "INETD" | ||||
|   | ||||
							
								
								
									
										133
									
								
								po/cs.po
									
									
									
									
									
								
							
							
						
						
									
										133
									
								
								po/cs.po
									
									
									
									
									
								
							| @@ -1,23 +1,24 @@ | ||||
| # Czech translation of libgtop | ||||
| # Czech translation of libgtop. | ||||
| # This file is distributed under the same license as the libgtop package. | ||||
| # Copyright (C) 2004 Miloslav Trmac <mitr@volny.cz> | ||||
| # Miloslav Trmac <mitr@volny.cz>, 2002, 2003, 2004 | ||||
| # Copyright (C) 2004 Miloslav Trmac <mitr@volny.cz>. | ||||
| # Miloslav Trmac <mitr@volny.cz>, 2002, 2003, 2004. | ||||
| # Lucas Lommer <llommer@svn.gnome.org>, 2008. | ||||
| # Petr Kovar <pknbe@volny.cz>, 2008. | ||||
| # | ||||
| msgid "" | ||||
| msgstr "" | ||||
| "Project-Id-Version: libgtop VERSION\n" | ||||
| "Project-Id-Version: libgtop\n" | ||||
| "Report-Msgid-Bugs-To: \n" | ||||
| "POT-Creation-Date: 2005-09-25 18:15+0200\n" | ||||
| "PO-Revision-Date: 2005-01-02 15:10+0100\n" | ||||
| "Last-Translator: Miloslav Trmac <mitr@volny.cz>\n" | ||||
| "Language-Team: Czech <cs@li.org>\n" | ||||
| "POT-Creation-Date: 2008-02-11 19:20+0100\n" | ||||
| "PO-Revision-Date: 2008-02-11 19:17+0100\n" | ||||
| "Last-Translator: Petr Kovar <pknbe@volny.cz>\n" | ||||
| "Language-Team: Czech <gnome-cs-list@gnome.org>\n" | ||||
| "MIME-Version: 1.0\n" | ||||
| "Content-Type: text/plain; charset=UTF-8\n" | ||||
| "Content-Transfer-Encoding: 8bit\n" | ||||
| "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%" | ||||
| "10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" | ||||
| "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" | ||||
|  | ||||
| #: lib/read.c:65 | ||||
| #: ../lib/read.c:51 | ||||
| #, c-format | ||||
| msgid "read %d byte" | ||||
| msgid_plural "read %d bytes" | ||||
| @@ -25,11 +26,11 @@ msgstr[0] "přečten %d bajt" | ||||
| msgstr[1] "přečteny %d bajty" | ||||
| msgstr[2] "přečteno %d bajtů" | ||||
|  | ||||
| #: lib/read_data.c:53 | ||||
| #: ../lib/read_data.c:51 | ||||
| msgid "read data size" | ||||
| msgstr "velikost přečtených dat" | ||||
|  | ||||
| #: lib/read_data.c:72 | ||||
| #: ../lib/read_data.c:70 | ||||
| #, c-format | ||||
| msgid "read %lu byte of data" | ||||
| msgid_plural "read %lu bytes of data" | ||||
| @@ -37,7 +38,7 @@ msgstr[0] "přečten %lu bajt dat" | ||||
| msgstr[1] "přečteny %lu bajty dat" | ||||
| msgstr[2] "přečteno %lu bajtů dat" | ||||
|  | ||||
| #: lib/write.c:52 | ||||
| #: ../lib/write.c:51 | ||||
| #, c-format | ||||
| msgid "wrote %d byte" | ||||
| msgid_plural "wrote %d bytes" | ||||
| @@ -45,167 +46,149 @@ msgstr[0] "zapsán %d bajt" | ||||
| msgstr[1] "zapsány %d bajty" | ||||
| msgstr[2] "zapsáno %d bajtů" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:460 | ||||
| #: ../src/daemon/gnuserv.c:458 | ||||
| msgid "Enable debugging" | ||||
| msgstr "Povolit ladění" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:460 | ||||
| msgid "DEBUG" | ||||
| msgstr "LADĚNÍ" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:462 | ||||
| #: ../src/daemon/gnuserv.c:460 | ||||
| msgid "Enable verbose output" | ||||
| msgstr "Povolit podrobný výstup" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:462 | ||||
| msgid "VERBOSE" | ||||
| msgstr "PODROBNĚ" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:464 | ||||
| #: ../src/daemon/gnuserv.c:462 | ||||
| msgid "Don't fork into background" | ||||
| msgstr "Neforkovat do pozadí" | ||||
| msgstr "Nevětvit do pozadí" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:464 | ||||
| msgid "NO-DAEMON" | ||||
| msgstr "NE-DÉMON" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:466 | ||||
| #: ../src/daemon/gnuserv.c:464 | ||||
| msgid "Invoked from inetd" | ||||
| msgstr "Spuštěn z inetd" | ||||
| msgstr "Spuštěno z inetd" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:466 | ||||
| msgid "INETD" | ||||
| msgstr "INETD" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:500 | ||||
| #: ../src/daemon/gnuserv.c:498 | ||||
| #, c-format | ||||
| msgid "" | ||||
| "Error on option %s: %s.\n" | ||||
| "Run '%s --help' to see a full list of available command line options.\n" | ||||
| msgid "Run '%s --help' to see a full list of available command line options.\n" | ||||
| msgstr "" | ||||
| "Chyba v přepínači %s: %s.\n" | ||||
| "Úplný seznam dostupných přepínačů zobrazíte spuštěním '%s --help'.\n" | ||||
| "Spusťte prosím \"%s --help\", chcete-li zobrazit všechny dostupné přepínače " | ||||
| "příkazové řádky.\n" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:28 sysdeps/sun4/siglist.c:28 | ||||
| #: ../sysdeps/osf1/siglist.c:27 ../sysdeps/sun4/siglist.c:27 | ||||
| msgid "Hangup" | ||||
| msgstr "Zavěšení" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:29 sysdeps/sun4/siglist.c:29 | ||||
| #: ../sysdeps/osf1/siglist.c:28 ../sysdeps/sun4/siglist.c:28 | ||||
| msgid "Interrupt" | ||||
| msgstr "Přerušení" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:30 sysdeps/sun4/siglist.c:30 | ||||
| #: ../sysdeps/osf1/siglist.c:29 ../sysdeps/sun4/siglist.c:29 | ||||
| msgid "Quit" | ||||
| msgstr "Konec" | ||||
| msgstr "Ukončení" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:31 sysdeps/sun4/siglist.c:31 | ||||
| #: ../sysdeps/osf1/siglist.c:30 ../sysdeps/sun4/siglist.c:30 | ||||
| msgid "Illegal instruction" | ||||
| msgstr "Neplatná instrukce" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:32 sysdeps/sun4/siglist.c:32 | ||||
| #: ../sysdeps/osf1/siglist.c:31 ../sysdeps/sun4/siglist.c:31 | ||||
| msgid "Trace trap" | ||||
| msgstr "Trasovací zachycení" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:33 sysdeps/sun4/siglist.c:33 | ||||
| #: ../sysdeps/osf1/siglist.c:32 ../sysdeps/sun4/siglist.c:32 | ||||
| msgid "Abort" | ||||
| msgstr "Přerušení" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:34 sysdeps/sun4/siglist.c:34 | ||||
| #: ../sysdeps/osf1/siglist.c:33 ../sysdeps/sun4/siglist.c:33 | ||||
| msgid "EMT error" | ||||
| msgstr "Chyba EMT" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:35 sysdeps/sun4/siglist.c:35 | ||||
| #: ../sysdeps/osf1/siglist.c:34 ../sysdeps/sun4/siglist.c:34 | ||||
| msgid "Floating-point exception" | ||||
| msgstr "Výjimka v plovoucí řádové čárce" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:36 sysdeps/sun4/siglist.c:36 | ||||
| #: ../sysdeps/osf1/siglist.c:35 ../sysdeps/sun4/siglist.c:35 | ||||
| msgid "Kill" | ||||
| msgstr "Zabití" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:37 sysdeps/sun4/siglist.c:37 | ||||
| #: ../sysdeps/osf1/siglist.c:36 ../sysdeps/sun4/siglist.c:36 | ||||
| msgid "Bus error" | ||||
| msgstr "Chyba sběrnice" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:38 sysdeps/sun4/siglist.c:38 | ||||
| #: ../sysdeps/osf1/siglist.c:37 ../sysdeps/sun4/siglist.c:37 | ||||
| msgid "Segmentation violation" | ||||
| msgstr "Porušení segmentace" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:39 sysdeps/sun4/siglist.c:39 | ||||
| #: ../sysdeps/osf1/siglist.c:38 ../sysdeps/sun4/siglist.c:38 | ||||
| msgid "Bad argument to system call" | ||||
| msgstr "Špatný argument systémového volání" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:40 sysdeps/sun4/siglist.c:40 | ||||
| #: ../sysdeps/osf1/siglist.c:39 ../sysdeps/sun4/siglist.c:39 | ||||
| msgid "Broken pipe" | ||||
| msgstr "Přerušená roura" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:41 sysdeps/sun4/siglist.c:41 | ||||
| #: ../sysdeps/osf1/siglist.c:40 ../sysdeps/sun4/siglist.c:40 | ||||
| msgid "Alarm clock" | ||||
| msgstr "Alarm" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:42 sysdeps/sun4/siglist.c:42 | ||||
| #: ../sysdeps/osf1/siglist.c:41 ../sysdeps/sun4/siglist.c:41 | ||||
| msgid "Termination" | ||||
| msgstr "Přerušení" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:43 sysdeps/sun4/siglist.c:43 | ||||
| #: ../sysdeps/osf1/siglist.c:42 ../sysdeps/sun4/siglist.c:42 | ||||
| msgid "Urgent condition on socket" | ||||
| msgstr "Urgentní stav soketu" | ||||
| msgstr "Urgentní stav socketu" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:44 sysdeps/sun4/siglist.c:44 | ||||
| #: ../sysdeps/osf1/siglist.c:43 ../sysdeps/sun4/siglist.c:43 | ||||
| msgid "Stop" | ||||
| msgstr "Zastavení" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:45 sysdeps/sun4/siglist.c:45 | ||||
| #: ../sysdeps/osf1/siglist.c:44 ../sysdeps/sun4/siglist.c:44 | ||||
| msgid "Keyboard stop" | ||||
| msgstr "Zastavení z klávesnice" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:46 sysdeps/sun4/siglist.c:46 | ||||
| #: ../sysdeps/osf1/siglist.c:45 ../sysdeps/sun4/siglist.c:45 | ||||
| msgid "Continue" | ||||
| msgstr "Pokračování" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:47 sysdeps/sun4/siglist.c:47 | ||||
| #: ../sysdeps/osf1/siglist.c:46 ../sysdeps/sun4/siglist.c:46 | ||||
| msgid "Child status has changed" | ||||
| msgstr "Stav potomka se změnil" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:48 sysdeps/sun4/siglist.c:48 | ||||
| #: ../sysdeps/osf1/siglist.c:47 ../sysdeps/sun4/siglist.c:47 | ||||
| msgid "Background read from tty" | ||||
| msgstr "Čtení tty z pozadí" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:49 sysdeps/sun4/siglist.c:49 | ||||
| #: ../sysdeps/osf1/siglist.c:48 ../sysdeps/sun4/siglist.c:48 | ||||
| msgid "Background write to tty" | ||||
| msgstr "Zápis na tty z pozadí" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:50 sysdeps/sun4/siglist.c:50 | ||||
| #: ../sysdeps/osf1/siglist.c:49 ../sysdeps/sun4/siglist.c:49 | ||||
| msgid "I/O now possible" | ||||
| msgstr "I/O je nyní možné" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:51 sysdeps/sun4/siglist.c:51 | ||||
| #: ../sysdeps/osf1/siglist.c:50 ../sysdeps/sun4/siglist.c:50 | ||||
| msgid "CPU limit exceeded" | ||||
| msgstr "Překročen limit CPU" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:52 sysdeps/sun4/siglist.c:52 | ||||
| #: ../sysdeps/osf1/siglist.c:51 ../sysdeps/sun4/siglist.c:51 | ||||
| msgid "File size limit exceeded" | ||||
| msgstr "Překročen limit velikosti souboru" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:53 sysdeps/sun4/siglist.c:53 | ||||
| #: ../sysdeps/osf1/siglist.c:52 ../sysdeps/sun4/siglist.c:52 | ||||
| msgid "Virtual alarm clock" | ||||
| msgstr "Virtuální alarm" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:54 sysdeps/sun4/siglist.c:54 | ||||
| #: ../sysdeps/osf1/siglist.c:53 ../sysdeps/sun4/siglist.c:53 | ||||
| msgid "Profiling alarm clock" | ||||
| msgstr "Profilovací alarm" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:55 sysdeps/sun4/siglist.c:55 | ||||
| #: ../sysdeps/osf1/siglist.c:54 ../sysdeps/sun4/siglist.c:54 | ||||
| msgid "Window size change" | ||||
| msgstr "Změna velikosti okna" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:56 sysdeps/sun4/siglist.c:56 | ||||
| #: ../sysdeps/osf1/siglist.c:55 ../sysdeps/sun4/siglist.c:55 | ||||
| msgid "Information request" | ||||
| msgstr "Požadavek na informaci" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:57 sysdeps/sun4/siglist.c:57 | ||||
| #: ../sysdeps/osf1/siglist.c:56 ../sysdeps/sun4/siglist.c:56 | ||||
| msgid "User defined signal 1" | ||||
| msgstr "Uživatelem definovaný signál 1" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:58 sysdeps/sun4/siglist.c:58 | ||||
| #: ../sysdeps/osf1/siglist.c:57 ../sysdeps/sun4/siglist.c:57 | ||||
| msgid "User defined signal 2" | ||||
| msgstr "Uživatelem definovaný signál 2" | ||||
|   | ||||
							
								
								
									
										119
									
								
								po/da.po
									
									
									
									
									
								
							
							
						
						
									
										119
									
								
								po/da.po
									
									
									
									
									
								
							| @@ -10,8 +10,8 @@ msgid "" | ||||
| msgstr "" | ||||
| "Project-Id-Version: libgtop\n" | ||||
| "Report-Msgid-Bugs-To: \n" | ||||
| "POT-Creation-Date: 2005-09-25 18:15+0200\n" | ||||
| "PO-Revision-Date: 2005-02-06 16:45+0100\n" | ||||
| "POT-Creation-Date: 2007-09-16 23:21+0200\n" | ||||
| "PO-Revision-Date: 2007-09-16 23:21+0200\n" | ||||
| "Last-Translator: Ole Laursen <olau@hardworking.dk>\n" | ||||
| "Language-Team: Danish <dansk@klid.dk>\n" | ||||
| "MIME-Version: 1.0\n" | ||||
| @@ -19,192 +19,185 @@ msgstr "" | ||||
| "Content-Transfer-Encoding: 8bit\n" | ||||
| "Plural-Forms: nplurals=2; plural=(n != 1);\n" | ||||
|  | ||||
| #: lib/read.c:65 | ||||
| #: ../lib/read.c:51 | ||||
| #, c-format | ||||
| msgid "read %d byte" | ||||
| msgid_plural "read %d bytes" | ||||
| msgstr[0] "læste %d byte" | ||||
| msgstr[1] "læste %d byte" | ||||
|  | ||||
| #: lib/read_data.c:53 | ||||
| #: ../lib/read_data.c:51 | ||||
| msgid "read data size" | ||||
| msgstr "læste datastørrelse" | ||||
|  | ||||
| #: lib/read_data.c:72 | ||||
| #: ../lib/read_data.c:70 | ||||
| #, c-format | ||||
| msgid "read %lu byte of data" | ||||
| msgid_plural "read %lu bytes of data" | ||||
| msgstr[0] "læste %lu byte" | ||||
| msgstr[1] "læste %lu byte" | ||||
|  | ||||
| #: lib/write.c:52 | ||||
| #: ../lib/write.c:51 | ||||
| #, c-format | ||||
| msgid "wrote %d byte" | ||||
| msgid_plural "wrote %d bytes" | ||||
| msgstr[0] "skrev %d byte" | ||||
| msgstr[1] "skrev %d byte" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:460 | ||||
| #: ../src/daemon/gnuserv.c:458 | ||||
| msgid "Enable debugging" | ||||
| msgstr "Slå fejlfinding til" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:460 | ||||
| msgid "DEBUG" | ||||
| msgstr "FEJLFINDING" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:462 | ||||
| #: ../src/daemon/gnuserv.c:460 | ||||
| msgid "Enable verbose output" | ||||
| msgstr "Slå meddelsom udskrift til" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:462 | ||||
| msgid "VERBOSE" | ||||
| msgstr "MEDDELSOM" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:464 | ||||
| #: ../src/daemon/gnuserv.c:462 | ||||
| msgid "Don't fork into background" | ||||
| msgstr "Forgren ikke til baggrund" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:464 | ||||
| msgid "NO-DAEMON" | ||||
| msgstr "INGEN-SERVER" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:466 | ||||
| #: ../src/daemon/gnuserv.c:464 | ||||
| msgid "Invoked from inetd" | ||||
| msgstr "Kaldt fra inetd" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:466 | ||||
| msgid "INETD" | ||||
| msgstr "INETD" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:500 | ||||
| #: ../src/daemon/gnuserv.c:498 | ||||
| #, c-format | ||||
| msgid "" | ||||
| "Error on option %s: %s.\n" | ||||
| "Run '%s --help' to see a full list of available command line options.\n" | ||||
| msgid "Run '%s --help' to see a full list of available command line options.\n" | ||||
| msgstr "" | ||||
| "Fejl ved flag %s: %s.\n" | ||||
| "Kør '%s --help' for at få liste over alle tilgængelige tilvalgsflag.\n" | ||||
| "Kør '%s --help' for at få en liste over alle tilgængelige tilvalgsflag.\n" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:28 sysdeps/sun4/siglist.c:28 | ||||
| #: ../sysdeps/osf1/siglist.c:27 ../sysdeps/sun4/siglist.c:27 | ||||
| msgid "Hangup" | ||||
| msgstr "Læg på" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:29 sysdeps/sun4/siglist.c:29 | ||||
| #: ../sysdeps/osf1/siglist.c:28 ../sysdeps/sun4/siglist.c:28 | ||||
| msgid "Interrupt" | ||||
| msgstr "Afbrud" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:30 sysdeps/sun4/siglist.c:30 | ||||
| #: ../sysdeps/osf1/siglist.c:29 ../sysdeps/sun4/siglist.c:29 | ||||
| msgid "Quit" | ||||
| msgstr "Afslut" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:31 sysdeps/sun4/siglist.c:31 | ||||
| #: ../sysdeps/osf1/siglist.c:30 ../sysdeps/sun4/siglist.c:30 | ||||
| msgid "Illegal instruction" | ||||
| msgstr "Ugyldig instruktion" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:32 sysdeps/sun4/siglist.c:32 | ||||
| #: ../sysdeps/osf1/siglist.c:31 ../sysdeps/sun4/siglist.c:31 | ||||
| msgid "Trace trap" | ||||
| msgstr "Spore fælde" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:33 sysdeps/sun4/siglist.c:33 | ||||
| #: ../sysdeps/osf1/siglist.c:32 ../sysdeps/sun4/siglist.c:32 | ||||
| msgid "Abort" | ||||
| msgstr "Afbryd" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:34 sysdeps/sun4/siglist.c:34 | ||||
| #: ../sysdeps/osf1/siglist.c:33 ../sysdeps/sun4/siglist.c:33 | ||||
| msgid "EMT error" | ||||
| msgstr "EMT-fejl" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:35 sysdeps/sun4/siglist.c:35 | ||||
| #: ../sysdeps/osf1/siglist.c:34 ../sysdeps/sun4/siglist.c:34 | ||||
| msgid "Floating-point exception" | ||||
| msgstr "Flydende tals-undtagelse" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:36 sysdeps/sun4/siglist.c:36 | ||||
| #: ../sysdeps/osf1/siglist.c:35 ../sysdeps/sun4/siglist.c:35 | ||||
| msgid "Kill" | ||||
| msgstr "Afslut" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:37 sysdeps/sun4/siglist.c:37 | ||||
| #: ../sysdeps/osf1/siglist.c:36 ../sysdeps/sun4/siglist.c:36 | ||||
| msgid "Bus error" | ||||
| msgstr "Bus-fejl" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:38 sysdeps/sun4/siglist.c:38 | ||||
| #: ../sysdeps/osf1/siglist.c:37 ../sysdeps/sun4/siglist.c:37 | ||||
| msgid "Segmentation violation" | ||||
| msgstr "Segmentovertrædelse" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:39 sysdeps/sun4/siglist.c:39 | ||||
| #: ../sysdeps/osf1/siglist.c:38 ../sysdeps/sun4/siglist.c:38 | ||||
| msgid "Bad argument to system call" | ||||
| msgstr "Ugyldig argument til systemkald" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:40 sysdeps/sun4/siglist.c:40 | ||||
| #: ../sysdeps/osf1/siglist.c:39 ../sysdeps/sun4/siglist.c:39 | ||||
| msgid "Broken pipe" | ||||
| msgstr "Brudt datakanal" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:41 sysdeps/sun4/siglist.c:41 | ||||
| #: ../sysdeps/osf1/siglist.c:40 ../sysdeps/sun4/siglist.c:40 | ||||
| msgid "Alarm clock" | ||||
| msgstr "Alarmklokke" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:42 sysdeps/sun4/siglist.c:42 | ||||
| #: ../sysdeps/osf1/siglist.c:41 ../sysdeps/sun4/siglist.c:41 | ||||
| msgid "Termination" | ||||
| msgstr "Terminering" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:43 sysdeps/sun4/siglist.c:43 | ||||
| #: ../sysdeps/osf1/siglist.c:42 ../sysdeps/sun4/siglist.c:42 | ||||
| msgid "Urgent condition on socket" | ||||
| msgstr "Vigtig tilstand på sokkel" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:44 sysdeps/sun4/siglist.c:44 | ||||
| #: ../sysdeps/osf1/siglist.c:43 ../sysdeps/sun4/siglist.c:43 | ||||
| msgid "Stop" | ||||
| msgstr "Stop" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:45 sysdeps/sun4/siglist.c:45 | ||||
| #: ../sysdeps/osf1/siglist.c:44 ../sysdeps/sun4/siglist.c:44 | ||||
| msgid "Keyboard stop" | ||||
| msgstr "Tastaturstop" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:46 sysdeps/sun4/siglist.c:46 | ||||
| #: ../sysdeps/osf1/siglist.c:45 ../sysdeps/sun4/siglist.c:45 | ||||
| msgid "Continue" | ||||
| msgstr "Fortsæt" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:47 sysdeps/sun4/siglist.c:47 | ||||
| #: ../sysdeps/osf1/siglist.c:46 ../sysdeps/sun4/siglist.c:46 | ||||
| msgid "Child status has changed" | ||||
| msgstr "Barnets status er ændret" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:48 sysdeps/sun4/siglist.c:48 | ||||
| #: ../sysdeps/osf1/siglist.c:47 ../sysdeps/sun4/siglist.c:47 | ||||
| msgid "Background read from tty" | ||||
| msgstr "Læsing fra tty i baggrunden" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:49 sysdeps/sun4/siglist.c:49 | ||||
| #: ../sysdeps/osf1/siglist.c:48 ../sysdeps/sun4/siglist.c:48 | ||||
| msgid "Background write to tty" | ||||
| msgstr "Skriving til tty i baggrunden" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:50 sysdeps/sun4/siglist.c:50 | ||||
| #: ../sysdeps/osf1/siglist.c:49 ../sysdeps/sun4/siglist.c:49 | ||||
| msgid "I/O now possible" | ||||
| msgstr "I/O nu muligt" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:51 sysdeps/sun4/siglist.c:51 | ||||
| #: ../sysdeps/osf1/siglist.c:50 ../sysdeps/sun4/siglist.c:50 | ||||
| msgid "CPU limit exceeded" | ||||
| msgstr "Processor-grænse overskredet" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:52 sysdeps/sun4/siglist.c:52 | ||||
| #: ../sysdeps/osf1/siglist.c:51 ../sysdeps/sun4/siglist.c:51 | ||||
| msgid "File size limit exceeded" | ||||
| msgstr "Grænse for filstørrelse overskredet" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:53 sysdeps/sun4/siglist.c:53 | ||||
| #: ../sysdeps/osf1/siglist.c:52 ../sysdeps/sun4/siglist.c:52 | ||||
| msgid "Virtual alarm clock" | ||||
| msgstr "Virtuel alarmklokke" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:54 sysdeps/sun4/siglist.c:54 | ||||
| #: ../sysdeps/osf1/siglist.c:53 ../sysdeps/sun4/siglist.c:53 | ||||
| msgid "Profiling alarm clock" | ||||
| msgstr "Profilerer alarmklokken" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:55 sysdeps/sun4/siglist.c:55 | ||||
| #: ../sysdeps/osf1/siglist.c:54 ../sysdeps/sun4/siglist.c:54 | ||||
| msgid "Window size change" | ||||
| msgstr "Ændring i vinduesstørrelse" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:56 sysdeps/sun4/siglist.c:56 | ||||
| #: ../sysdeps/osf1/siglist.c:55 ../sysdeps/sun4/siglist.c:55 | ||||
| msgid "Information request" | ||||
| msgstr "Informationsforespørsel" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:57 sysdeps/sun4/siglist.c:57 | ||||
| #: ../sysdeps/osf1/siglist.c:56 ../sysdeps/sun4/siglist.c:56 | ||||
| msgid "User defined signal 1" | ||||
| msgstr "Brugerdefineret signal 2" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:58 sysdeps/sun4/siglist.c:58 | ||||
| #: ../sysdeps/osf1/siglist.c:57 ../sysdeps/sun4/siglist.c:57 | ||||
| msgid "User defined signal 2" | ||||
| msgstr "Brugerdefineret signal 2" | ||||
|  | ||||
| #~ msgid "DEBUG" | ||||
| #~ msgstr "FEJLFINDING" | ||||
|  | ||||
| #~ msgid "VERBOSE" | ||||
| #~ msgstr "MEDDELSOM" | ||||
|  | ||||
| #~ msgid "NO-DAEMON" | ||||
| #~ msgstr "INGEN-SERVER" | ||||
|  | ||||
| #~ msgid "INETD" | ||||
| #~ msgstr "INETD" | ||||
|   | ||||
							
								
								
									
										19
									
								
								po/eu.po
									
									
									
									
									
								
							
							
						
						
									
										19
									
								
								po/eu.po
									
									
									
									
									
								
							| @@ -1,18 +1,18 @@ | ||||
| # translation of eu.po to Basque | ||||
| # translation of libgtop.HEAD.po to Basque | ||||
| # This file is distributed under the same license as the PACKAGE package. | ||||
| # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER. | ||||
| # | ||||
| # Hizkuntza Politikarako Sailburuordetza <hizpol@ej-gv.es>, 2004. | ||||
| # Iñaki Larrañaga Murgoitio <dooteo@euskalgnu.org>, 2004, 2005. | ||||
| # Iñaki Larrañaga Murgoitio <dooteo@euskalgnu.org>, 2004, 2005, 2008. | ||||
| # Iñaki Larrañaga Murgoitio <dooteo@zundan.com>, 2007. | ||||
| msgid "" | ||||
| msgstr "" | ||||
| "Project-Id-Version: eu\n" | ||||
| "Project-Id-Version: libgtop.HEAD\n" | ||||
| "Report-Msgid-Bugs-To: \n" | ||||
| "POT-Creation-Date: 2007-08-05 13:55+0200\n" | ||||
| "PO-Revision-Date: 2007-08-05 13:56+0200\n" | ||||
| "Last-Translator: Iñaki Larrañaga Murgoitio <dooteo@zundan.com>\n" | ||||
| "Language-Team: Basque <eu@li.org>\n" | ||||
| "POT-Creation-Date: 2008-01-11 16:41+0100\n" | ||||
| "PO-Revision-Date: 2008-01-10 23:26+0100\n" | ||||
| "Last-Translator: Iñaki Larrañaga Murgoitio <dooteo@euskalgnu.org>\n" | ||||
| "Language-Team: Basque <itzulpena@euskalgnu.org>\n" | ||||
| "MIME-Version: 1.0\n" | ||||
| "Content-Type: text/plain; charset=UTF-8\n" | ||||
| "Content-Transfer-Encoding: 8bit\n" | ||||
| @@ -149,11 +149,11 @@ msgstr "Umearen egoera aldatu egin da" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:47 ../sysdeps/sun4/siglist.c:47 | ||||
| msgid "Background read from tty" | ||||
| msgstr "Irakurri tty atzeko planoan " | ||||
| msgstr "Irakurri tty atzeko planoan" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:48 ../sysdeps/sun4/siglist.c:48 | ||||
| msgid "Background write to tty" | ||||
| msgstr "Idatzi tty-en atzeko planoan " | ||||
| msgstr "Idatzi tty-en atzeko planoan" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:49 ../sysdeps/sun4/siglist.c:49 | ||||
| msgid "I/O now possible" | ||||
| @@ -190,4 +190,3 @@ msgstr "Erabiltzaileak zehaztutako 1. seinalea" | ||||
| #: ../sysdeps/osf1/siglist.c:57 ../sysdeps/sun4/siglist.c:57 | ||||
| msgid "User defined signal 2" | ||||
| msgstr "Erabiltzaileak zehaztutako 2. seinalea" | ||||
|  | ||||
|   | ||||
							
								
								
									
										118
									
								
								po/gl.po
									
									
									
									
									
								
							
							
						
						
									
										118
									
								
								po/gl.po
									
									
									
									
									
								
							| @@ -1,4 +1,4 @@ | ||||
| # translation of libgtop.gnome-2-10.po to Galego | ||||
| # translation of gl.po to Galego | ||||
| # Galician translation of libgtop. | ||||
| # Copyright (C) 1999, 2000 Jesus Bravo Alvarez | ||||
| # | ||||
| @@ -9,209 +9,193 @@ | ||||
| # | ||||
| # Se alguén me axuda coa revisión dalgunhas traduccións "pouco ortodoxas", | ||||
| # agradeceríallo. ;-) | ||||
| # | ||||
| # Jesus Bravo Alvarez <jba@pobox.com>, 1999, 2000. | ||||
| # Ignacio Casal Quinteiro <nacho.resa@gmail.com>, 2005. | ||||
| # | ||||
| # Ignacio Casal Quinteiro <icq@svn.gnome.org>, 2007. | ||||
| msgid "" | ||||
| msgstr "" | ||||
| "Project-Id-Version: libgtop.gnome-2-10\n" | ||||
| "Project-Id-Version: gl\n" | ||||
| "Report-Msgid-Bugs-To: \n" | ||||
| "POT-Creation-Date: 2006-12-04 15:52+0100\n" | ||||
| "PO-Revision-Date: 2005-06-13 17:22+0200\n" | ||||
| "Last-Translator: Ignacio Casal Quinteiro <nacho.resa@gmail.com>\n" | ||||
| "Language-Team: Galego\n" | ||||
| "POT-Creation-Date: 2007-11-28 15:25+0100\n" | ||||
| "PO-Revision-Date: 2007-11-28 15:25+0100\n" | ||||
| "Last-Translator: Ignacio Casal Quinteiro <icq@svn.gnome.org>\n" | ||||
| "Language-Team: Galego <proxecto@trasno.net>\n" | ||||
| "MIME-Version: 1.0\n" | ||||
| "Content-Type: text/plain; charset=UTF-8\n" | ||||
| "Content-Transfer-Encoding: 8bit\n" | ||||
| "X-Generator: KBabel 1.9.1\n" | ||||
| "X-Generator: KBabel 1.11.4\n" | ||||
| "Plural-Forms:  nplurals=2; plural=(n != 1);\n" | ||||
|  | ||||
| #: ../lib/read.c:65 | ||||
| #: ../lib/read.c:51 | ||||
| #, c-format | ||||
| msgid "read %d byte" | ||||
| msgid_plural "read %d bytes" | ||||
| msgstr[0] "lido %d byte" | ||||
| msgstr[1] "lidos %d bytes" | ||||
|  | ||||
| #: ../lib/read_data.c:53 | ||||
| #: ../lib/read_data.c:51 | ||||
| msgid "read data size" | ||||
| msgstr "tamaño dos datos lidos" | ||||
|  | ||||
| #: ../lib/read_data.c:72 | ||||
| #: ../lib/read_data.c:70 | ||||
| #, c-format | ||||
| msgid "read %lu byte of data" | ||||
| msgid_plural "read %lu bytes of data" | ||||
| msgstr[0] "lido %lu byte de datos" | ||||
| msgstr[1] "lidos %lu bytes de datos" | ||||
|  | ||||
| #: ../lib/write.c:53 | ||||
| #: ../lib/write.c:51 | ||||
| #, c-format | ||||
| msgid "wrote %d byte" | ||||
| msgid_plural "wrote %d bytes" | ||||
| msgstr[0] "escrito %d byte" | ||||
| msgstr[1] "escritos %d bytes" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:460 | ||||
| #: ../src/daemon/gnuserv.c:458 | ||||
| msgid "Enable debugging" | ||||
| msgstr "Activar depuración" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:460 | ||||
| msgid "DEBUG" | ||||
| msgstr "DEPURACIÓN" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:462 | ||||
| msgid "Enable verbose output" | ||||
| msgstr "Activar saída detallada" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:462 | ||||
| msgid "VERBOSE" | ||||
| msgstr "DETALLADO" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:464 | ||||
| msgid "Don't fork into background" | ||||
| msgstr "Non facer fork na tarefa de fondo" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:464 | ||||
| msgid "NO-DAEMON" | ||||
| msgstr "NON-DAEMON" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:466 | ||||
| msgid "Invoked from inetd" | ||||
| msgstr "Invocado desde inetd" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:466 | ||||
| msgid "INETD" | ||||
| msgstr "INETD" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:500 | ||||
| #: ../src/daemon/gnuserv.c:498 | ||||
| #, c-format | ||||
| msgid "" | ||||
| "Error on option %s: %s.\n" | ||||
| "Run '%s --help' to see a full list of available command line options.\n" | ||||
| msgstr "Produciuse un erro na opción %s: %s.\n" | ||||
|        "Execute '%s --help' para ver unha lista completa das opcións de liña\n" | ||||
|        "de comandos dispoñibles.\n" | ||||
| msgid "Run '%s --help' to see a full list of available command line options.\n" | ||||
| msgstr "" | ||||
| "Execute '%s --help' para ver unha lista completa das opcións de liña\n" | ||||
| "de comandos dispoñibles.\n" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:29 ../sysdeps/sun4/siglist.c:29 | ||||
| #: ../sysdeps/osf1/siglist.c:27 ../sysdeps/sun4/siglist.c:27 | ||||
| msgid "Hangup" | ||||
| msgstr "Colgar" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:30 ../sysdeps/sun4/siglist.c:30 | ||||
| #: ../sysdeps/osf1/siglist.c:28 ../sysdeps/sun4/siglist.c:28 | ||||
| msgid "Interrupt" | ||||
| msgstr "Interromper" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:31 ../sysdeps/sun4/siglist.c:31 | ||||
| #: ../sysdeps/osf1/siglist.c:29 ../sysdeps/sun4/siglist.c:29 | ||||
| msgid "Quit" | ||||
| msgstr "Saír" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:32 ../sysdeps/sun4/siglist.c:32 | ||||
| #: ../sysdeps/osf1/siglist.c:30 ../sysdeps/sun4/siglist.c:30 | ||||
| msgid "Illegal instruction" | ||||
| msgstr "Instrución ilegal" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:33 ../sysdeps/sun4/siglist.c:33 | ||||
| #: ../sysdeps/osf1/siglist.c:31 ../sysdeps/sun4/siglist.c:31 | ||||
| msgid "Trace trap" | ||||
| msgstr "Captura do rastro" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:34 ../sysdeps/sun4/siglist.c:34 | ||||
| #: ../sysdeps/osf1/siglist.c:32 ../sysdeps/sun4/siglist.c:32 | ||||
| msgid "Abort" | ||||
| msgstr "Interromper" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:35 ../sysdeps/sun4/siglist.c:35 | ||||
| #: ../sysdeps/osf1/siglist.c:33 ../sysdeps/sun4/siglist.c:33 | ||||
| msgid "EMT error" | ||||
| msgstr "Erro EMT" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:36 ../sysdeps/sun4/siglist.c:36 | ||||
| #: ../sysdeps/osf1/siglist.c:34 ../sysdeps/sun4/siglist.c:34 | ||||
| msgid "Floating-point exception" | ||||
| msgstr "Excepción da coma flotante" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:37 ../sysdeps/sun4/siglist.c:37 | ||||
| #: ../sysdeps/osf1/siglist.c:35 ../sysdeps/sun4/siglist.c:35 | ||||
| msgid "Kill" | ||||
| msgstr "Matar" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:38 ../sysdeps/sun4/siglist.c:38 | ||||
| #: ../sysdeps/osf1/siglist.c:36 ../sysdeps/sun4/siglist.c:36 | ||||
| msgid "Bus error" | ||||
| msgstr "Erro de bus" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:39 ../sysdeps/sun4/siglist.c:39 | ||||
| #: ../sysdeps/osf1/siglist.c:37 ../sysdeps/sun4/siglist.c:37 | ||||
| msgid "Segmentation violation" | ||||
| msgstr "Erro de segmento" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:40 ../sysdeps/sun4/siglist.c:40 | ||||
| #: ../sysdeps/osf1/siglist.c:38 ../sysdeps/sun4/siglist.c:38 | ||||
| msgid "Bad argument to system call" | ||||
| msgstr "Argumento incorrecto na chamada ao sistema" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:41 ../sysdeps/sun4/siglist.c:41 | ||||
| #: ../sysdeps/osf1/siglist.c:39 ../sysdeps/sun4/siglist.c:39 | ||||
| msgid "Broken pipe" | ||||
| msgstr "Canalización danada" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:42 ../sysdeps/sun4/siglist.c:42 | ||||
| #: ../sysdeps/osf1/siglist.c:40 ../sysdeps/sun4/siglist.c:40 | ||||
| msgid "Alarm clock" | ||||
| msgstr "Reloxo de alarma" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:43 ../sysdeps/sun4/siglist.c:43 | ||||
| #: ../sysdeps/osf1/siglist.c:41 ../sysdeps/sun4/siglist.c:41 | ||||
| msgid "Termination" | ||||
| msgstr "Finalización" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:44 ../sysdeps/sun4/siglist.c:44 | ||||
| #: ../sysdeps/osf1/siglist.c:42 ../sysdeps/sun4/siglist.c:42 | ||||
| msgid "Urgent condition on socket" | ||||
| msgstr "Condición urxente no conectador" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:45 ../sysdeps/sun4/siglist.c:45 | ||||
| #: ../sysdeps/osf1/siglist.c:43 ../sysdeps/sun4/siglist.c:43 | ||||
| msgid "Stop" | ||||
| msgstr "Deter" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:46 ../sysdeps/sun4/siglist.c:46 | ||||
| #: ../sysdeps/osf1/siglist.c:44 ../sysdeps/sun4/siglist.c:44 | ||||
| msgid "Keyboard stop" | ||||
| msgstr "Detención co teclado" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:47 ../sysdeps/sun4/siglist.c:47 | ||||
| #: ../sysdeps/osf1/siglist.c:45 ../sysdeps/sun4/siglist.c:45 | ||||
| msgid "Continue" | ||||
| msgstr "Continuar" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:48 ../sysdeps/sun4/siglist.c:48 | ||||
| #: ../sysdeps/osf1/siglist.c:46 ../sysdeps/sun4/siglist.c:46 | ||||
| msgid "Child status has changed" | ||||
| msgstr "O estado do fillo cambiou" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:49 ../sysdeps/sun4/siglist.c:49 | ||||
| #: ../sysdeps/osf1/siglist.c:47 ../sysdeps/sun4/siglist.c:47 | ||||
| msgid "Background read from tty" | ||||
| msgstr "Lectura en segundo plano do tty" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:50 ../sysdeps/sun4/siglist.c:50 | ||||
| #: ../sysdeps/osf1/siglist.c:48 ../sysdeps/sun4/siglist.c:48 | ||||
| msgid "Background write to tty" | ||||
| msgstr "Escritura en segundo plano ao tty" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:51 ../sysdeps/sun4/siglist.c:51 | ||||
| #: ../sysdeps/osf1/siglist.c:49 ../sysdeps/sun4/siglist.c:49 | ||||
| msgid "I/O now possible" | ||||
| msgstr "A E/S é posible agora" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:52 ../sysdeps/sun4/siglist.c:52 | ||||
| #: ../sysdeps/osf1/siglist.c:50 ../sysdeps/sun4/siglist.c:50 | ||||
| msgid "CPU limit exceeded" | ||||
| msgstr "Límite de CPU excedido" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:53 ../sysdeps/sun4/siglist.c:53 | ||||
| #: ../sysdeps/osf1/siglist.c:51 ../sysdeps/sun4/siglist.c:51 | ||||
| msgid "File size limit exceeded" | ||||
| msgstr "Excedeuse o límite de tamaño do ficheiro" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:54 ../sysdeps/sun4/siglist.c:54 | ||||
| #: ../sysdeps/osf1/siglist.c:52 ../sysdeps/sun4/siglist.c:52 | ||||
| msgid "Virtual alarm clock" | ||||
| msgstr "Reloxo de alarma virtual" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:55 ../sysdeps/sun4/siglist.c:55 | ||||
| #: ../sysdeps/osf1/siglist.c:53 ../sysdeps/sun4/siglist.c:53 | ||||
| msgid "Profiling alarm clock" | ||||
| msgstr "Reloxo de alarma con perfil" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:56 ../sysdeps/sun4/siglist.c:56 | ||||
| #: ../sysdeps/osf1/siglist.c:54 ../sysdeps/sun4/siglist.c:54 | ||||
| msgid "Window size change" | ||||
| msgstr "Cambio do tamaño da ventá" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:57 ../sysdeps/sun4/siglist.c:57 | ||||
| #: ../sysdeps/osf1/siglist.c:55 ../sysdeps/sun4/siglist.c:55 | ||||
| msgid "Information request" | ||||
| msgstr "Petición de Información" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:58 ../sysdeps/sun4/siglist.c:58 | ||||
| #: ../sysdeps/osf1/siglist.c:56 ../sysdeps/sun4/siglist.c:56 | ||||
| msgid "User defined signal 1" | ||||
| msgstr "Sinal 1 definido polo usuario" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:59 ../sysdeps/sun4/siglist.c:59 | ||||
| #: ../sysdeps/osf1/siglist.c:57 ../sysdeps/sun4/siglist.c:57 | ||||
| msgid "User defined signal 2" | ||||
| msgstr "Sinal 2 definido polo usuario" | ||||
|  | ||||
|   | ||||
							
								
								
									
										314
									
								
								po/he.po
									
									
									
									
									
								
							
							
						
						
									
										314
									
								
								po/he.po
									
									
									
									
									
								
							| @@ -8,7 +8,7 @@ msgid "" | ||||
| msgstr "" | ||||
| "Project-Id-Version: libgtop.libgtop-GNOME-2-0-port.he\n" | ||||
| "Report-Msgid-Bugs-To: \n" | ||||
| "POT-Creation-Date: 2006-04-27 17:02+0300\n" | ||||
| "POT-Creation-Date: 2007-09-30 03:40+0100\n" | ||||
| "PO-Revision-Date: 2003-03-18 18:06+0200\n" | ||||
| "Last-Translator: Yair Hershkovitz <yairhr@gmail.com>\n" | ||||
| "Language-Team: Hebrew <he@li.org>\n" | ||||
| @@ -20,390 +20,184 @@ msgstr "" | ||||
|  | ||||
| # *** This library should not be translated (only copy the english msgs) *** | ||||
| # *** Old hebrew translation is commented for backup sake                *** | ||||
|  | ||||
| #: lib/read.c:65 | ||||
| #: ../lib/read.c:51 | ||||
| #, c-format | ||||
| msgid "read %d byte" | ||||
| msgid_plural "read %d bytes" | ||||
| msgstr[0] "read %d byte" | ||||
| msgstr[1] "read %d bytes" | ||||
|  | ||||
| #: lib/read_data.c:53 | ||||
| #: ../lib/read_data.c:51 | ||||
| msgid "read data size" | ||||
| msgstr "read data size" | ||||
|  | ||||
| #: lib/read_data.c:72 | ||||
| #: ../lib/read_data.c:70 | ||||
| #, c-format | ||||
| msgid "read %lu byte of data" | ||||
| msgid_plural "read %lu bytes of data" | ||||
| msgstr[0] "read %lu byte of data" | ||||
| msgstr[1] "read %lu bytes of data" | ||||
|  | ||||
| #: lib/write.c:52 | ||||
| #: ../lib/write.c:51 | ||||
| #, c-format | ||||
| msgid "wrote %d byte" | ||||
| msgid_plural "wrote %d bytes" | ||||
| msgstr[0] "wrote %d byte" | ||||
| msgstr[1] "wrote %d bytes" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:460 | ||||
| #: ../src/daemon/gnuserv.c:458 | ||||
| msgid "Enable debugging" | ||||
| msgstr "Enable debugging" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:460 | ||||
| msgid "DEBUG" | ||||
| msgstr "DEBUG" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:462 | ||||
| #: ../src/daemon/gnuserv.c:460 | ||||
| msgid "Enable verbose output" | ||||
| msgstr "Enable verbose output" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:462 | ||||
| msgid "VERBOSE" | ||||
| msgstr "VERBOSE" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:464 | ||||
| #: ../src/daemon/gnuserv.c:462 | ||||
| msgid "Don't fork into background" | ||||
| msgstr "Don't fork into background" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:464 | ||||
| msgid "NO-DAEMON" | ||||
| msgstr "NO-DAEMON" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:466 | ||||
| #: ../src/daemon/gnuserv.c:464 | ||||
| msgid "Invoked from inetd" | ||||
| msgstr "Invoked from inetd" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:466 | ||||
| msgid "INETD" | ||||
| msgstr "INETD" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:500 | ||||
| #: ../src/daemon/gnuserv.c:498 | ||||
| #, c-format | ||||
| msgid "" | ||||
| "Error on option %s: %s.\n" | ||||
| "Run '%s --help' to see a full list of available command line options.\n" | ||||
| msgstr "" | ||||
| "Error on option %s: %s.\n" | ||||
| "Run '%s --help' to see a full list of available command line options.\n" | ||||
| msgid "Run '%s --help' to see a full list of available command line options.\n" | ||||
| msgstr "Run '%s --help' to see a full list of available command line options.\n" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:29 sysdeps/sun4/siglist.c:29 | ||||
| #: ../sysdeps/osf1/siglist.c:27 ../sysdeps/sun4/siglist.c:27 | ||||
| msgid "Hangup" | ||||
| msgstr "Hangup" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:30 sysdeps/sun4/siglist.c:30 | ||||
| #: ../sysdeps/osf1/siglist.c:28 ../sysdeps/sun4/siglist.c:28 | ||||
| msgid "Interrupt" | ||||
| msgstr "Interrupt" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:31 sysdeps/sun4/siglist.c:31 | ||||
| #: ../sysdeps/osf1/siglist.c:29 ../sysdeps/sun4/siglist.c:29 | ||||
| msgid "Quit" | ||||
| msgstr "Quit" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:32 sysdeps/sun4/siglist.c:32 | ||||
| #: ../sysdeps/osf1/siglist.c:30 ../sysdeps/sun4/siglist.c:30 | ||||
| msgid "Illegal instruction" | ||||
| msgstr "Illegal instruction" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:33 sysdeps/sun4/siglist.c:33 | ||||
| #: ../sysdeps/osf1/siglist.c:31 ../sysdeps/sun4/siglist.c:31 | ||||
| msgid "Trace trap" | ||||
| msgstr "Trace trap" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:34 sysdeps/sun4/siglist.c:34 | ||||
| #: ../sysdeps/osf1/siglist.c:32 ../sysdeps/sun4/siglist.c:32 | ||||
| msgid "Abort" | ||||
| msgstr "Abort" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:35 sysdeps/sun4/siglist.c:35 | ||||
| #: ../sysdeps/osf1/siglist.c:33 ../sysdeps/sun4/siglist.c:33 | ||||
| msgid "EMT error" | ||||
| msgstr "EMT error" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:36 sysdeps/sun4/siglist.c:36 | ||||
| #: ../sysdeps/osf1/siglist.c:34 ../sysdeps/sun4/siglist.c:34 | ||||
| msgid "Floating-point exception" | ||||
| msgstr "Floating-point exception" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:37 sysdeps/sun4/siglist.c:37 | ||||
| #: ../sysdeps/osf1/siglist.c:35 ../sysdeps/sun4/siglist.c:35 | ||||
| msgid "Kill" | ||||
| msgstr "Kill" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:38 sysdeps/sun4/siglist.c:38 | ||||
| #: ../sysdeps/osf1/siglist.c:36 ../sysdeps/sun4/siglist.c:36 | ||||
| msgid "Bus error" | ||||
| msgstr "Bus error" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:39 sysdeps/sun4/siglist.c:39 | ||||
| #: ../sysdeps/osf1/siglist.c:37 ../sysdeps/sun4/siglist.c:37 | ||||
| msgid "Segmentation violation" | ||||
| msgstr "Segmentation violation" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:40 sysdeps/sun4/siglist.c:40 | ||||
| #: ../sysdeps/osf1/siglist.c:38 ../sysdeps/sun4/siglist.c:38 | ||||
| msgid "Bad argument to system call" | ||||
| msgstr "Bad argument to system call" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:41 sysdeps/sun4/siglist.c:41 | ||||
| #: ../sysdeps/osf1/siglist.c:39 ../sysdeps/sun4/siglist.c:39 | ||||
| msgid "Broken pipe" | ||||
| msgstr "Broken pipe" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:42 sysdeps/sun4/siglist.c:42 | ||||
| #: ../sysdeps/osf1/siglist.c:40 ../sysdeps/sun4/siglist.c:40 | ||||
| msgid "Alarm clock" | ||||
| msgstr "Alarm clock" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:43 sysdeps/sun4/siglist.c:43 | ||||
| #: ../sysdeps/osf1/siglist.c:41 ../sysdeps/sun4/siglist.c:41 | ||||
| msgid "Termination" | ||||
| msgstr "Termination" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:44 sysdeps/sun4/siglist.c:44 | ||||
| #: ../sysdeps/osf1/siglist.c:42 ../sysdeps/sun4/siglist.c:42 | ||||
| msgid "Urgent condition on socket" | ||||
| msgstr "Urgent condition on socket" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:45 sysdeps/sun4/siglist.c:45 | ||||
| #: ../sysdeps/osf1/siglist.c:43 ../sysdeps/sun4/siglist.c:43 | ||||
| msgid "Stop" | ||||
| msgstr "Stop" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:46 sysdeps/sun4/siglist.c:46 | ||||
| #: ../sysdeps/osf1/siglist.c:44 ../sysdeps/sun4/siglist.c:44 | ||||
| msgid "Keyboard stop" | ||||
| msgstr "Keyboard stop" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:47 sysdeps/sun4/siglist.c:47 | ||||
| #: ../sysdeps/osf1/siglist.c:45 ../sysdeps/sun4/siglist.c:45 | ||||
| msgid "Continue" | ||||
| msgstr "Continue" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:48 sysdeps/sun4/siglist.c:48 | ||||
| #: ../sysdeps/osf1/siglist.c:46 ../sysdeps/sun4/siglist.c:46 | ||||
| msgid "Child status has changed" | ||||
| msgstr "Child status has changed" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:49 sysdeps/sun4/siglist.c:49 | ||||
| #: ../sysdeps/osf1/siglist.c:47 ../sysdeps/sun4/siglist.c:47 | ||||
| msgid "Background read from tty" | ||||
| msgstr "Background read from tty" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:50 sysdeps/sun4/siglist.c:50 | ||||
| #: ../sysdeps/osf1/siglist.c:48 ../sysdeps/sun4/siglist.c:48 | ||||
| msgid "Background write to tty" | ||||
| msgstr "Background write to tty" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:51 sysdeps/sun4/siglist.c:51 | ||||
| #: ../sysdeps/osf1/siglist.c:49 ../sysdeps/sun4/siglist.c:49 | ||||
| msgid "I/O now possible" | ||||
| msgstr "I/O now possible" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:52 sysdeps/sun4/siglist.c:52 | ||||
| #: ../sysdeps/osf1/siglist.c:50 ../sysdeps/sun4/siglist.c:50 | ||||
| msgid "CPU limit exceeded" | ||||
| msgstr "CPU limit exceeded" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:53 sysdeps/sun4/siglist.c:53 | ||||
| #: ../sysdeps/osf1/siglist.c:51 ../sysdeps/sun4/siglist.c:51 | ||||
| msgid "File size limit exceeded" | ||||
| msgstr "File size limit exceeded" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:54 sysdeps/sun4/siglist.c:54 | ||||
| #: ../sysdeps/osf1/siglist.c:52 ../sysdeps/sun4/siglist.c:52 | ||||
| msgid "Virtual alarm clock" | ||||
| msgstr "Virtual alarm clock" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:55 sysdeps/sun4/siglist.c:55 | ||||
| #: ../sysdeps/osf1/siglist.c:53 ../sysdeps/sun4/siglist.c:53 | ||||
| msgid "Profiling alarm clock" | ||||
| msgstr "Profiling alarm clock" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:56 sysdeps/sun4/siglist.c:56 | ||||
| #: ../sysdeps/osf1/siglist.c:54 ../sysdeps/sun4/siglist.c:54 | ||||
| msgid "Window size change" | ||||
| msgstr "Window size change" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:57 sysdeps/sun4/siglist.c:57 | ||||
| #: ../sysdeps/osf1/siglist.c:55 ../sysdeps/sun4/siglist.c:55 | ||||
| msgid "Information request" | ||||
| msgstr "Information request" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:58 sysdeps/sun4/siglist.c:58 | ||||
| #: ../sysdeps/osf1/siglist.c:56 ../sysdeps/sun4/siglist.c:56 | ||||
| msgid "User defined signal 1" | ||||
| msgstr "User defined signal 1" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:59 sysdeps/sun4/siglist.c:59 | ||||
| #: ../sysdeps/osf1/siglist.c:57 ../sysdeps/sun4/siglist.c:57 | ||||
| msgid "User defined signal 2" | ||||
| msgstr "User defined signal 2" | ||||
|  | ||||
| # | ||||
| ##: lib/read.c:65 | ||||
| ##, c-format | ||||
| #msgid "read %d byte" | ||||
| #msgid_plural "read %d bytes" | ||||
| #msgstr[0] "" | ||||
| #"נקראו %d בתים" | ||||
| #msgstr[1] "" | ||||
| #"נקראו %d בתים" | ||||
| # | ||||
| ##: lib/read_data.c:53 | ||||
| #msgid "read data size" | ||||
| #msgstr "קורא את גודל המידע" | ||||
| # | ||||
| ##: lib/read_data.c:72 | ||||
| ##,, c-format | ||||
| #msgid "read %lu byte of data" | ||||
| #msgid_plural "read %lu bytes of data" | ||||
| #msgstr[0] "" | ||||
| #"נקראו %lu בתים של מידע" | ||||
| #msgstr[1] "" | ||||
| #"נקראו %lu בתים של מידע" | ||||
| # | ||||
| ##: lib/write.c:52 | ||||
| ##, c-format | ||||
| #msgid "wrote %d byte" | ||||
| #msgid_plural "wrote %d bytes" | ||||
| #msgstr[0] "" | ||||
| #"נכתבו %d בתים" | ||||
| #msgstr[1] "" | ||||
| #"נכתבו %d בתים" | ||||
| # | ||||
| ##: src/daemon/gnuserv.c:460 | ||||
| #msgid "Enable debugging" | ||||
| #msgstr "אפשר ניפוי" | ||||
| # | ||||
| ##: src/daemon/gnuserv.c:460 | ||||
| #msgid "DEBUG" | ||||
| #msgstr "ניפוי" | ||||
| # | ||||
| ##: src/daemon/gnuserv.c:462 | ||||
| #msgid "Enable verbose output" | ||||
| #msgstr "אפשר פלט מפורט" | ||||
| # | ||||
| ##: src/daemon/gnuserv.c:462 | ||||
| #msgid "VERBOSE" | ||||
| #msgstr "מפורט" | ||||
| # | ||||
| ##: src/daemon/gnuserv.c:464 | ||||
| #msgid "Don't fork into background" | ||||
| #msgstr "אל תשכפל לרקע" | ||||
| # | ||||
| ##: src/daemon/gnuserv.c:464 | ||||
| #msgid "NO-DAEMON" | ||||
| #msgstr "NO-DAEMON" | ||||
| # | ||||
| ##: src/daemon/gnuserv.c:466 | ||||
| #msgid "Invoked from inetd" | ||||
| #msgstr "" | ||||
| # | ||||
| ##: src/daemon/gnuserv.c:466 | ||||
| #msgid "INETD" | ||||
| #msgstr "" | ||||
| # | ||||
| ##: src/daemon/gnuserv.c:500 | ||||
| ##, c-format | ||||
| #msgid "" | ||||
| #"Error on option %s: %s.\n" | ||||
| #"Run '%s --help' to see a full list of available command line options.\n" | ||||
| #msgstr "" | ||||
| #"שגיאה באפשרות %s: %s.\n" | ||||
| #"הפעל '%s --help' כדי לראות רשימה מלאה של אפשרויות שורות פקודה זמינות.\n" | ||||
| # | ||||
| ##: sysdeps/osf1/siglist.c:29 sysdeps/sun4/siglist.c:29 | ||||
| #msgid "Hangup" | ||||
| #msgstr "ניתוק" | ||||
| # | ||||
| ##: sysdeps/osf1/siglist.c:30 sysdeps/sun4/siglist.c:30 | ||||
| #msgid "Interrupt" | ||||
| #msgstr "הפרעה" | ||||
| # | ||||
| ##: sysdeps/osf1/siglist.c:31 sysdeps/sun4/siglist.c:31 | ||||
| #msgid "Quit" | ||||
| #msgstr "יציאה" | ||||
| # | ||||
| ##: sysdeps/osf1/siglist.c:32 sysdeps/sun4/siglist.c:32 | ||||
| #msgid "Illegal instruction" | ||||
| #msgstr "הוראה לא חוקית" | ||||
| # | ||||
| ##: sysdeps/osf1/siglist.c:33 sysdeps/sun4/siglist.c:33 | ||||
| #msgid "Trace trap" | ||||
| #msgstr "" | ||||
| # | ||||
| ##: sysdeps/osf1/siglist.c:34 sysdeps/sun4/siglist.c:34 | ||||
| #msgid "Abort" | ||||
| #msgstr "ביטול" | ||||
| # | ||||
| ##: sysdeps/osf1/siglist.c:35 sysdeps/sun4/siglist.c:35 | ||||
| #msgid "EMT error" | ||||
| #msgstr "שגיאת EMT" | ||||
| # | ||||
| ##: sysdeps/osf1/siglist.c:36 sysdeps/sun4/siglist.c:36 | ||||
| #msgid "Floating-point exception" | ||||
| #msgstr "" | ||||
| # | ||||
| ##: sysdeps/osf1/siglist.c:37 sysdeps/sun4/siglist.c:37 | ||||
| #msgid "Kill" | ||||
| #msgstr "הרוג" | ||||
| # | ||||
| ##: sysdeps/osf1/siglist.c:38 sysdeps/sun4/siglist.c:38 | ||||
| #msgid "Bus error" | ||||
| #msgstr "שגיאת אפיק" | ||||
| # | ||||
| ##: sysdeps/osf1/siglist.c:39 sysdeps/sun4/siglist.c:39 | ||||
| #msgid "Segmentation violation" | ||||
| #msgstr "הפרעת התחלקות" | ||||
| # | ||||
| ##: sysdeps/osf1/siglist.c:40 sysdeps/sun4/siglist.c:40 | ||||
| #msgid "Bad argument to system call" | ||||
| #msgstr "" | ||||
| # | ||||
| ##: sysdeps/osf1/siglist.c:41 sysdeps/sun4/siglist.c:41 | ||||
| #msgid "Broken pipe" | ||||
| #msgstr "צינור שבור" | ||||
| # | ||||
| ##: sysdeps/osf1/siglist.c:42 sysdeps/sun4/siglist.c:42 | ||||
| #msgid "Alarm clock" | ||||
| #msgstr "שעון מעורר" | ||||
| # | ||||
| ##: sysdeps/osf1/siglist.c:43 sysdeps/sun4/siglist.c:43 | ||||
| #msgid "Termination" | ||||
| #msgstr "סיום" | ||||
| # | ||||
| ##: sysdeps/osf1/siglist.c:44 sysdeps/sun4/siglist.c:44 | ||||
| #msgid "Urgent condition on socket" | ||||
| #msgstr "" | ||||
| # | ||||
| ##: sysdeps/osf1/siglist.c:45 sysdeps/sun4/siglist.c:45 | ||||
| #msgid "Stop" | ||||
| #msgstr "עצור" | ||||
| # | ||||
| ##: sysdeps/osf1/siglist.c:46 sysdeps/sun4/siglist.c:46 | ||||
| #msgid "Keyboard stop" | ||||
| #msgstr "עצירת מקלדת" | ||||
| # | ||||
| ##: sysdeps/osf1/siglist.c:47 sysdeps/sun4/siglist.c:47 | ||||
| #msgid "Continue" | ||||
| #msgstr "המשך" | ||||
| # | ||||
| ##: sysdeps/osf1/siglist.c:48 sysdeps/sun4/siglist.c:48 | ||||
| #msgid "Child status has changed" | ||||
| #msgstr "מצב הילד השתנה" | ||||
| # | ||||
| ##: sysdeps/osf1/siglist.c:49 sysdeps/sun4/siglist.c:49 | ||||
| #msgid "Background read from tty" | ||||
| #msgstr "קרית רקע מ tty" | ||||
| # | ||||
| ##: sysdeps/osf1/siglist.c:50 sysdeps/sun4/siglist.c:50 | ||||
| #msgid "Background write to tty" | ||||
| #msgstr "כתיבת רקע מ tty" | ||||
| # | ||||
| ##: sysdeps/osf1/siglist.c:51 sysdeps/sun4/siglist.c:51 | ||||
| #msgid "I/O now possible" | ||||
| #msgstr "קלט/פלט עכשיו אפשרי" | ||||
| # | ||||
| ##: sysdeps/osf1/siglist.c:52 sysdeps/sun4/siglist.c:52 | ||||
| #msgid "CPU limit exceeded" | ||||
| #msgstr "" | ||||
| # | ||||
| ##: sysdeps/osf1/siglist.c:53 sysdeps/sun4/siglist.c:53 | ||||
| #msgid "File size limit exceeded" | ||||
| #msgstr "" | ||||
| # | ||||
| ##: sysdeps/osf1/siglist.c:54 sysdeps/sun4/siglist.c:54 | ||||
| #msgid "Virtual alarm clock" | ||||
| #msgstr "שעון מעורר וירוטאלי" | ||||
| # | ||||
| ##: sysdeps/osf1/siglist.c:55 sysdeps/sun4/siglist.c:55 | ||||
| #msgid "Profiling alarm clock" | ||||
| #msgstr "" | ||||
| # | ||||
| ##: sysdeps/osf1/siglist.c:56 sysdeps/sun4/siglist.c:56 | ||||
| #msgid "Window size change" | ||||
| #msgstr "שינוי גודל חלון" | ||||
| # | ||||
| ##: sysdeps/osf1/siglist.c:57 sysdeps/sun4/siglist.c:57 | ||||
| #msgid "Information request" | ||||
| #msgstr "בקשת מידע" | ||||
| # | ||||
| ##: sysdeps/osf1/siglist.c:58 sysdeps/sun4/siglist.c:58 | ||||
| #msgid "User defined signal 1" | ||||
| #msgstr "אות מוגדר משתמש 1" | ||||
| # | ||||
| ##: sysdeps/osf1/siglist.c:59 sysdeps/sun4/siglist.c:59 | ||||
| #msgid "User defined signal 2" | ||||
| #msgstr "אות מוגדר משתמש 2" | ||||
| #~ msgid "DEBUG" | ||||
| #~ msgstr "DEBUG" | ||||
|  | ||||
| #~ msgid "VERBOSE" | ||||
| #~ msgstr "VERBOSE" | ||||
|  | ||||
| #~ msgid "NO-DAEMON" | ||||
| #~ msgstr "NO-DAEMON" | ||||
|  | ||||
| #~ msgid "INETD" | ||||
| #~ msgstr "INETD" | ||||
|   | ||||
							
								
								
									
										109
									
								
								po/it.po
									
									
									
									
									
								
							
							
						
						
									
										109
									
								
								po/it.po
									
									
									
									
									
								
							| @@ -6,8 +6,8 @@ msgid "" | ||||
| msgstr "" | ||||
| "Project-Id-Version: libgtop\n" | ||||
| "Report-Msgid-Bugs-To: \n" | ||||
| "POT-Creation-Date: 2005-09-25 18:15+0200\n" | ||||
| "PO-Revision-Date: 2005-03-03 22:47+0100\n" | ||||
| "POT-Creation-Date: 2007-10-02 23:18+0200\n" | ||||
| "PO-Revision-Date: 2007-10-02 23:18+0200\n" | ||||
| "Last-Translator: Alessio Frusciante <algol@firenze.linux.it>\n" | ||||
| "Language-Team: Italian <tp@lists.linux.it>\n" | ||||
| "MIME-Version: 1.0\n" | ||||
| @@ -15,193 +15,174 @@ msgstr "" | ||||
| "Content-Transfer-Encoding: 8bit\n" | ||||
| "Plural-Forms: nplurals=2; plural=(n != 1);\n" | ||||
|  | ||||
| #: lib/read.c:65 | ||||
| #: ../lib/read.c:51 | ||||
| #, c-format | ||||
| msgid "read %d byte" | ||||
| msgid_plural "read %d bytes" | ||||
| msgstr[0] "letto %d byte" | ||||
| msgstr[1] "letti %d byte" | ||||
|  | ||||
| #: lib/read_data.c:53 | ||||
| #: ../lib/read_data.c:51 | ||||
| msgid "read data size" | ||||
| msgstr "dimensione dei dati letti" | ||||
|  | ||||
| #: lib/read_data.c:72 | ||||
| #: ../lib/read_data.c:70 | ||||
| #, c-format | ||||
| msgid "read %lu byte of data" | ||||
| msgid_plural "read %lu bytes of data" | ||||
| msgstr[0] "letto %lu byte di dati" | ||||
| msgstr[1] "letti %lu byte di dati" | ||||
|  | ||||
| #: lib/write.c:52 | ||||
| #: ../lib/write.c:51 | ||||
| #, c-format | ||||
| msgid "wrote %d byte" | ||||
| msgid_plural "wrote %d bytes" | ||||
| msgstr[0] "scrittura di %d byte" | ||||
| msgstr[1] "scrittura di %d byte" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:460 | ||||
| #: ../src/daemon/gnuserv.c:458 | ||||
| msgid "Enable debugging" | ||||
| msgstr "Abilita debug" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:460 | ||||
| msgid "DEBUG" | ||||
| msgstr "DEBUG" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:462 | ||||
| #: ../src/daemon/gnuserv.c:460 | ||||
| msgid "Enable verbose output" | ||||
| msgstr "Abilita output prolisso" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:462 | ||||
| msgid "VERBOSE" | ||||
| msgstr "VERBOSE" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:464 | ||||
| #: ../src/daemon/gnuserv.c:462 | ||||
| msgid "Don't fork into background" | ||||
| msgstr "Non fare fork in background" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:464 | ||||
| msgid "NO-DAEMON" | ||||
| msgstr "NO-DAEMON" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:466 | ||||
| #: ../src/daemon/gnuserv.c:464 | ||||
| msgid "Invoked from inetd" | ||||
| msgstr "Invocato da inetd" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:466 | ||||
| msgid "INETD" | ||||
| msgstr "INETD" | ||||
|  | ||||
| #: src/daemon/gnuserv.c:500 | ||||
| #: ../src/daemon/gnuserv.c:498 | ||||
| #, c-format | ||||
| msgid "" | ||||
| "Error on option %s: %s.\n" | ||||
| "Run '%s --help' to see a full list of available command line options.\n" | ||||
| msgid "Run '%s --help' to see a full list of available command line options.\n" | ||||
| msgstr "" | ||||
| "Errore nell'opzione %s: %s.\n" | ||||
| "Eseguire '%s --help' per vedere una lista completa delle opzioni per la " | ||||
| "linea di comando.\n" | ||||
| "Eseguire '%s --help' per vedere una lista completa delle opzioni per la riga " | ||||
| "di comando.\n" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:28 sysdeps/sun4/siglist.c:28 | ||||
| #: ../sysdeps/osf1/siglist.c:27 ../sysdeps/sun4/siglist.c:27 | ||||
| msgid "Hangup" | ||||
| msgstr "Hangup" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:29 sysdeps/sun4/siglist.c:29 | ||||
| #: ../sysdeps/osf1/siglist.c:28 ../sysdeps/sun4/siglist.c:28 | ||||
| msgid "Interrupt" | ||||
| msgstr "Interrupt" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:30 sysdeps/sun4/siglist.c:30 | ||||
| #: ../sysdeps/osf1/siglist.c:29 ../sysdeps/sun4/siglist.c:29 | ||||
| msgid "Quit" | ||||
| msgstr "Quit" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:31 sysdeps/sun4/siglist.c:31 | ||||
| #: ../sysdeps/osf1/siglist.c:30 ../sysdeps/sun4/siglist.c:30 | ||||
| msgid "Illegal instruction" | ||||
| msgstr "Illegal instruction" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:32 sysdeps/sun4/siglist.c:32 | ||||
| #: ../sysdeps/osf1/siglist.c:31 ../sysdeps/sun4/siglist.c:31 | ||||
| msgid "Trace trap" | ||||
| msgstr "Trace trap" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:33 sysdeps/sun4/siglist.c:33 | ||||
| #: ../sysdeps/osf1/siglist.c:32 ../sysdeps/sun4/siglist.c:32 | ||||
| msgid "Abort" | ||||
| msgstr "Abort" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:34 sysdeps/sun4/siglist.c:34 | ||||
| #: ../sysdeps/osf1/siglist.c:33 ../sysdeps/sun4/siglist.c:33 | ||||
| msgid "EMT error" | ||||
| msgstr "EMT error" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:35 sysdeps/sun4/siglist.c:35 | ||||
| #: ../sysdeps/osf1/siglist.c:34 ../sysdeps/sun4/siglist.c:34 | ||||
| msgid "Floating-point exception" | ||||
| msgstr "Floating-point exception" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:36 sysdeps/sun4/siglist.c:36 | ||||
| #: ../sysdeps/osf1/siglist.c:35 ../sysdeps/sun4/siglist.c:35 | ||||
| msgid "Kill" | ||||
| msgstr "Kill" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:37 sysdeps/sun4/siglist.c:37 | ||||
| #: ../sysdeps/osf1/siglist.c:36 ../sysdeps/sun4/siglist.c:36 | ||||
| msgid "Bus error" | ||||
| msgstr "Bus error" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:38 sysdeps/sun4/siglist.c:38 | ||||
| #: ../sysdeps/osf1/siglist.c:37 ../sysdeps/sun4/siglist.c:37 | ||||
| msgid "Segmentation violation" | ||||
| msgstr "Segmentation violation" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:39 sysdeps/sun4/siglist.c:39 | ||||
| #: ../sysdeps/osf1/siglist.c:38 ../sysdeps/sun4/siglist.c:38 | ||||
| msgid "Bad argument to system call" | ||||
| msgstr "Bad argument to system call" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:40 sysdeps/sun4/siglist.c:40 | ||||
| #: ../sysdeps/osf1/siglist.c:39 ../sysdeps/sun4/siglist.c:39 | ||||
| msgid "Broken pipe" | ||||
| msgstr "Broken pipe" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:41 sysdeps/sun4/siglist.c:41 | ||||
| #: ../sysdeps/osf1/siglist.c:40 ../sysdeps/sun4/siglist.c:40 | ||||
| msgid "Alarm clock" | ||||
| msgstr "Alarm clock" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:42 sysdeps/sun4/siglist.c:42 | ||||
| #: ../sysdeps/osf1/siglist.c:41 ../sysdeps/sun4/siglist.c:41 | ||||
| msgid "Termination" | ||||
| msgstr "Termination" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:43 sysdeps/sun4/siglist.c:43 | ||||
| #: ../sysdeps/osf1/siglist.c:42 ../sysdeps/sun4/siglist.c:42 | ||||
| msgid "Urgent condition on socket" | ||||
| msgstr "Urgent condition on socket" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:44 sysdeps/sun4/siglist.c:44 | ||||
| #: ../sysdeps/osf1/siglist.c:43 ../sysdeps/sun4/siglist.c:43 | ||||
| msgid "Stop" | ||||
| msgstr "Stop" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:45 sysdeps/sun4/siglist.c:45 | ||||
| #: ../sysdeps/osf1/siglist.c:44 ../sysdeps/sun4/siglist.c:44 | ||||
| msgid "Keyboard stop" | ||||
| msgstr "Keyboard stop" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:46 sysdeps/sun4/siglist.c:46 | ||||
| #: ../sysdeps/osf1/siglist.c:45 ../sysdeps/sun4/siglist.c:45 | ||||
| msgid "Continue" | ||||
| msgstr "Continue" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:47 sysdeps/sun4/siglist.c:47 | ||||
| #: ../sysdeps/osf1/siglist.c:46 ../sysdeps/sun4/siglist.c:46 | ||||
| msgid "Child status has changed" | ||||
| msgstr "Lo stato del figlio è cambiato" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:48 sysdeps/sun4/siglist.c:48 | ||||
| #: ../sysdeps/osf1/siglist.c:47 ../sysdeps/sun4/siglist.c:47 | ||||
| msgid "Background read from tty" | ||||
| msgstr "Lettura in background dalla tty" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:49 sysdeps/sun4/siglist.c:49 | ||||
| #: ../sysdeps/osf1/siglist.c:48 ../sysdeps/sun4/siglist.c:48 | ||||
| msgid "Background write to tty" | ||||
| msgstr "Scrittura in background sulla tty" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:50 sysdeps/sun4/siglist.c:50 | ||||
| #: ../sysdeps/osf1/siglist.c:49 ../sysdeps/sun4/siglist.c:49 | ||||
| msgid "I/O now possible" | ||||
| msgstr "I/O adesso possibile" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:51 sysdeps/sun4/siglist.c:51 | ||||
| #: ../sysdeps/osf1/siglist.c:50 ../sysdeps/sun4/siglist.c:50 | ||||
| msgid "CPU limit exceeded" | ||||
| msgstr "Superato il limite della CPU" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:52 sysdeps/sun4/siglist.c:52 | ||||
| #: ../sysdeps/osf1/siglist.c:51 ../sysdeps/sun4/siglist.c:51 | ||||
| msgid "File size limit exceeded" | ||||
| msgstr "Superato il limite nella dimensione dei file" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:53 sysdeps/sun4/siglist.c:53 | ||||
| #: ../sysdeps/osf1/siglist.c:52 ../sysdeps/sun4/siglist.c:52 | ||||
| msgid "Virtual alarm clock" | ||||
| msgstr "Virtual alarm clock" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:54 sysdeps/sun4/siglist.c:54 | ||||
| #: ../sysdeps/osf1/siglist.c:53 ../sysdeps/sun4/siglist.c:53 | ||||
| msgid "Profiling alarm clock" | ||||
| msgstr "Profiling alarm clock" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:55 sysdeps/sun4/siglist.c:55 | ||||
| #: ../sysdeps/osf1/siglist.c:54 ../sysdeps/sun4/siglist.c:54 | ||||
| msgid "Window size change" | ||||
| msgstr "Window size change" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:56 sysdeps/sun4/siglist.c:56 | ||||
| #: ../sysdeps/osf1/siglist.c:55 ../sysdeps/sun4/siglist.c:55 | ||||
| msgid "Information request" | ||||
| msgstr "Information request" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:57 sysdeps/sun4/siglist.c:57 | ||||
| #: ../sysdeps/osf1/siglist.c:56 ../sysdeps/sun4/siglist.c:56 | ||||
| msgid "User defined signal 1" | ||||
| msgstr "Segnale definito dall'utente 1" | ||||
|  | ||||
| #: sysdeps/osf1/siglist.c:58 sysdeps/sun4/siglist.c:58 | ||||
| #: ../sysdeps/osf1/siglist.c:57 ../sysdeps/sun4/siglist.c:57 | ||||
| msgid "User defined signal 2" | ||||
| msgstr "Segnale definito dall'utente 2" | ||||
|   | ||||
							
								
								
									
										190
									
								
								po/mr.po
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										190
									
								
								po/mr.po
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,190 @@ | ||||
| # translation of libgtop.HEAD.mr.po to marathi | ||||
| # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER | ||||
| # This file is distributed under the same license as the PACKAGE package. | ||||
| # | ||||
| # sandeep shedmake <sandeep.shedmake@gmail.com>, 2007. | ||||
| msgid "" | ||||
| msgstr "" | ||||
| "Project-Id-Version: libgtop.HEAD.mr\n" | ||||
| "Report-Msgid-Bugs-To: \n" | ||||
| "POT-Creation-Date: 2007-12-11 03:56+0000\n" | ||||
| "PO-Revision-Date: 2007-12-12 10:37+0530\n" | ||||
| "Last-Translator: sandeep shedmake <sandeep.shedmake@gmail.com>\n" | ||||
| "Language-Team: marathi\n" | ||||
| "MIME-Version: 1.0\n" | ||||
| "Content-Type: text/plain; charset=UTF-8\n" | ||||
| "Content-Transfer-Encoding: 8bit\n" | ||||
| "Plural-Forms: nplurals=2; plural=(n!=1);\n\n" | ||||
| "\n" | ||||
| "X-Generator: KBabel 1.11.4\n" | ||||
|  | ||||
| #: ../lib/read.c:51 | ||||
| #, c-format | ||||
| msgid "read %d byte" | ||||
| msgid_plural "read %d bytes" | ||||
| msgstr[0] "%d बाइट वाचा" | ||||
| msgstr[1] "%d बाइट वाचा" | ||||
|  | ||||
| #: ../lib/read_data.c:51 | ||||
| msgid "read data size" | ||||
| msgstr "माहिती आकार वाचा" | ||||
|  | ||||
| #: ../lib/read_data.c:70 | ||||
| #, c-format | ||||
| msgid "read %lu byte of data" | ||||
| msgid_plural "read %lu bytes of data" | ||||
| msgstr[0] "%lu बाइट माहिती वाचा" | ||||
| msgstr[1] "%lu बाइट माहिती वाचा" | ||||
|  | ||||
| #: ../lib/write.c:51 | ||||
| #, c-format | ||||
| msgid "wrote %d byte" | ||||
| msgid_plural "wrote %d bytes" | ||||
| msgstr[0] "%d बाइट लिहीले" | ||||
| msgstr[1] "%d बाइट लिहीले" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:458 | ||||
| msgid "Enable debugging" | ||||
| msgstr "निर्धारण कार्यान्वीत करा" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:460 | ||||
| msgid "Enable verbose output" | ||||
| msgstr "प्रदान वाचताजोगी करा" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:462 | ||||
| msgid "Don't fork into background" | ||||
| msgstr "पार्श्वभूमीत विभाजीत करू नका" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:464 | ||||
| msgid "Invoked from inetd" | ||||
| msgstr "inetd पासून प्रेरीत" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:498 | ||||
| #, c-format | ||||
| msgid "Run '%s --help' to see a full list of available command line options.\n" | ||||
| msgstr "उपलब्ध आदेश ओळ पर्याय दर्शविण्याकरीता '%s --help' चालवा.\n" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:27 ../sysdeps/sun4/siglist.c:27 | ||||
| msgid "Hangup" | ||||
| msgstr "स्तब्ध" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:28 ../sysdeps/sun4/siglist.c:28 | ||||
| msgid "Interrupt" | ||||
| msgstr "अडथळा" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:29 ../sysdeps/sun4/siglist.c:29 | ||||
| msgid "Quit" | ||||
| msgstr "बाहेर पडा" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:30 ../sysdeps/sun4/siglist.c:30 | ||||
| msgid "Illegal instruction" | ||||
| msgstr "अवैध सूचना" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:31 ../sysdeps/sun4/siglist.c:31 | ||||
| msgid "Trace trap" | ||||
| msgstr "शोध जतन करा" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:32 ../sysdeps/sun4/siglist.c:32 | ||||
| msgid "Abort" | ||||
| msgstr "वगळा" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:33 ../sysdeps/sun4/siglist.c:33 | ||||
| msgid "EMT error" | ||||
| msgstr "EMT त्रुटी" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:34 ../sysdeps/sun4/siglist.c:34 | ||||
| msgid "Floating-point exception" | ||||
| msgstr "संख्यात्मक अपवाद" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:35 ../sysdeps/sun4/siglist.c:35 | ||||
| msgid "Kill" | ||||
| msgstr "नष्ट करा" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:36 ../sysdeps/sun4/siglist.c:36 | ||||
| msgid "Bus error" | ||||
| msgstr "बस त्रुटी" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:37 ../sysdeps/sun4/siglist.c:37 | ||||
| msgid "Segmentation violation" | ||||
| msgstr "अनैतिक विभागणी" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:38 ../sysdeps/sun4/siglist.c:38 | ||||
| msgid "Bad argument to system call" | ||||
| msgstr "प्रणाली कार्यपध्दतीकरीता खराब बाब" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:39 ../sysdeps/sun4/siglist.c:39 | ||||
| msgid "Broken pipe" | ||||
| msgstr "अवैध पाईप" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:40 ../sysdeps/sun4/siglist.c:40 | ||||
| msgid "Alarm clock" | ||||
| msgstr "सूचनात्मक घड्याळ" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:41 ../sysdeps/sun4/siglist.c:41 | ||||
| msgid "Termination" | ||||
| msgstr "वगळा" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:42 ../sysdeps/sun4/siglist.c:42 | ||||
| msgid "Urgent condition on socket" | ||||
| msgstr "सॉकेटवरील तातडीची परिस्थिती" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:43 ../sysdeps/sun4/siglist.c:43 | ||||
| msgid "Stop" | ||||
| msgstr "थांबा" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:44 ../sysdeps/sun4/siglist.c:44 | ||||
| msgid "Keyboard stop" | ||||
| msgstr "कळफलक अकार्यान्वीत" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:45 ../sysdeps/sun4/siglist.c:45 | ||||
| msgid "Continue" | ||||
| msgstr "पुढे जा" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:46 ../sysdeps/sun4/siglist.c:46 | ||||
| msgid "Child status has changed" | ||||
| msgstr "उपकार्यांची स्थिती बदलली आहे" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:47 ../sysdeps/sun4/siglist.c:47 | ||||
| msgid "Background read from tty" | ||||
| msgstr "tty पासून पृष्ठभाग वाचन" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:48 ../sysdeps/sun4/siglist.c:48 | ||||
| msgid "Background write to tty" | ||||
| msgstr "tty कडे पृष्ठभाग लेखन" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:49 ../sysdeps/sun4/siglist.c:49 | ||||
| msgid "I/O now possible" | ||||
| msgstr "I/O आता शक्य आहे" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:50 ../sysdeps/sun4/siglist.c:50 | ||||
| msgid "CPU limit exceeded" | ||||
| msgstr "CPU मर्यादा वाढल्या गेले" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:51 ../sysdeps/sun4/siglist.c:51 | ||||
| msgid "File size limit exceeded" | ||||
| msgstr "फाइल आकार मर्यादा पलीकडे" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:52 ../sysdeps/sun4/siglist.c:52 | ||||
| msgid "Virtual alarm clock" | ||||
| msgstr "आभासी सूचनात्मक घड्याळ" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:53 ../sysdeps/sun4/siglist.c:53 | ||||
| msgid "Profiling alarm clock" | ||||
| msgstr "सूचनात्मक घड्याळ संक्षिप्त चित्र बनवित आहे" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:54 ../sysdeps/sun4/siglist.c:54 | ||||
| msgid "Window size change" | ||||
| msgstr "चौकट आकार बदलवा" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:55 ../sysdeps/sun4/siglist.c:55 | ||||
| msgid "Information request" | ||||
| msgstr "माहितीकरीता विनंती" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:56 ../sysdeps/sun4/siglist.c:56 | ||||
| msgid "User defined signal 1" | ||||
| msgstr "वापरकर्ता व्याख्यीत संकेत 1" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:57 ../sysdeps/sun4/siglist.c:57 | ||||
| msgid "User defined signal 2" | ||||
| msgstr "वापरकर्ता व्याख्यीत संकेत 2" | ||||
|  | ||||
							
								
								
									
										6
									
								
								po/nb.po
									
									
									
									
									
								
							
							
						
						
									
										6
									
								
								po/nb.po
									
									
									
									
									
								
							| @@ -1,15 +1,15 @@ | ||||
| # Norwegian translation for Libgtop (bokmål dialect) | ||||
| # Copyright (C) 1998-2004 Free Software Foundation, Inc. | ||||
| # Kjartan Maraas <kmaraas@gnome.org>, 1998-2004. | ||||
| # Kjartan Maraas <kmaraas@gnome.org>, 1998-2007. | ||||
| # | ||||
| msgid "" | ||||
| msgstr "" | ||||
| "Project-Id-Version: libgtop 2.5.1\n" | ||||
| "Project-Id-Version: libgtop 2.21.x\n" | ||||
| "Report-Msgid-Bugs-To: \n" | ||||
| "POT-Creation-Date: 2007-06-23 11:52+0200\n" | ||||
| "PO-Revision-Date: 2007-06-23 11:52+0200\n" | ||||
| "Last-Translator: Kjartan Maraas <kmaraas@gnome.org>\n" | ||||
| "Language-Team: Norwegian <i18n-nb@lister.ping.uio.no>\n" | ||||
| "Language-Team: Norwegian Bokmål <i18n-nb@lister.ping.uio.no>\n" | ||||
| "MIME-Version: 1.0\n" | ||||
| "Content-Type: text/plain; charset=UTF-8\n" | ||||
| "Content-Transfer-Encoding: 8-bit\n" | ||||
|   | ||||
							
								
								
									
										158
									
								
								po/ne.po
									
									
									
									
									
								
							
							
						
						
									
										158
									
								
								po/ne.po
									
									
									
									
									
								
							| @@ -1,23 +1,21 @@ | ||||
| # translation of libgtop.HEAD.ne.po to Nepali | ||||
| # translation of libgtop.gnome-2-10.ne.po to Nepali | ||||
| # translation of libgtop.gnome-2-10.po to Nepali | ||||
| # translation of libgtop.HEAD.po to Nepali | ||||
| # translation of libgtop.gnome-2-20.ne.po to Nepali | ||||
| # Nepali Translation Project. | ||||
| # This file is distributed under the same license as the libgtop package. | ||||
| # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER. | ||||
| # | ||||
| # Pawan Chitrakar  <pawan@nplinux.org>, 2004. | ||||
| # Jaydeep Bhusal <zaydeep@hotmail.com>, 2005. | ||||
| # Bishnu Adhikari <bsn_adk@hotmail.com>, 2005. | ||||
| # Shiva  Pokharel <pokharelshiva@hotmail.com>, 2005. | ||||
| # Mahesh subedi <submanesh@hotmail.com>, 2006. | ||||
| # | ||||
| # Nabin Gautam <nabin@mpp.org.np>, 2007. | ||||
| msgid "" | ||||
| msgstr "" | ||||
| "Project-Id-Version: libgtop.HEAD.ne\n" | ||||
| "Project-Id-Version: libgtop.gnome-2-20.ne\n" | ||||
| "Report-Msgid-Bugs-To: \n" | ||||
| "POT-Creation-Date: 2006-07-14 22:35+0200\n" | ||||
| "PO-Revision-Date: 2006-07-20 14:58+0545\n" | ||||
| "Last-Translator: Mahesh subedi <submanesh@hotmail.com>\n" | ||||
| "POT-Creation-Date: 2007-09-30 03:40+0100\n" | ||||
| "PO-Revision-Date: 2007-12-19 12:53+0545\n" | ||||
| "Last-Translator: Nabin Gautam <nabin@mpp.org.np>\n" | ||||
| "Language-Team: Nepali <info@mpp.org.np>\n" | ||||
| "MIME-Version: 1.0\n" | ||||
| "Content-Type: text/plain; charset=UTF-8\n" | ||||
| @@ -25,196 +23,176 @@ msgstr "" | ||||
| "X-Poedit-Language: Nepali\n" | ||||
| "X-Poedit-Country: NEPAL\n" | ||||
| "X-Poedit-SourceCharset: utf-8\n" | ||||
| "X-Generator: KBabel 1.10.2\n" | ||||
| "Plural-Forms: nplurals=2;plural=(n!=1)\n" | ||||
| "X-Generator: KBabel 1.11.4\n" | ||||
| "Plural-Forms: nplurals=2; plural=n !=1\n" | ||||
|  | ||||
| #: ../lib/read.c:65 | ||||
| #: ../lib/read.c:51 | ||||
| #, c-format | ||||
| msgid "read %d byte" | ||||
| msgid_plural "read %d bytes" | ||||
| msgstr[0] "%d बाइट पढ्नुहोस्" | ||||
| msgstr[1] "%d बाइट्स पढ्नुहोस्" | ||||
| msgstr[1] "%d बाइट पढ्नुहोस्" | ||||
|  | ||||
| #: ../lib/read_data.c:53 | ||||
| #: ../lib/read_data.c:51 | ||||
| msgid "read data size" | ||||
| msgstr "डेटा साइज पढ्नुहोस्" | ||||
|  | ||||
| #: ../lib/read_data.c:72 | ||||
| #: ../lib/read_data.c:70 | ||||
| #, c-format | ||||
| msgid "read %lu byte of data" | ||||
| msgid_plural "read %lu bytes of data" | ||||
| msgstr[0] "डेटाको %lu बाइट पढ्नुहोस्" | ||||
| msgstr[1] "डेटाको %lu बाइट्स पढ्नुहोस्" | ||||
| msgstr[1] "डेटाको %lu बाइट पढ्नुहोस्" | ||||
|  | ||||
| #: ../lib/write.c:53 | ||||
| #: ../lib/write.c:51 | ||||
| #, c-format | ||||
| msgid "wrote %d byte" | ||||
| msgid_plural "wrote %d bytes" | ||||
| msgstr[0] "%d बाइट लेख्यो" | ||||
| msgstr[1] "%d बाइट्स लेख्यो" | ||||
| msgstr[1] "%d बाइट लेख्यो" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:460 | ||||
| #: ../src/daemon/gnuserv.c:458 | ||||
| msgid "Enable debugging" | ||||
| msgstr "डिबग सक्षम पार्नुहोस्" | ||||
| msgstr "डिबगिङ सक्षम पार्नुहोस्" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:460 | ||||
| msgid "DEBUG" | ||||
| msgstr "DEBUG" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:462 | ||||
| msgid "Enable verbose output" | ||||
| msgstr "भर्बोज निर्गत सक्षम पार्नुहोस्" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:462 | ||||
| msgid "VERBOSE" | ||||
| msgstr "VERBOSE" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:464 | ||||
| msgid "Don't fork into background" | ||||
| msgstr "पृष्ठभूमिमा फोर्क नगर्नुहोस्" | ||||
| msgstr "पृष्ठभूमिमा बिभाजन नगर्नुहोस्" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:464 | ||||
| msgid "NO-DAEMON" | ||||
| msgstr "NO-DAEMON" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:466 | ||||
| msgid "Invoked from inetd" | ||||
| msgstr "इनेट्डबाट आव्हान गरिएको" | ||||
| msgstr "inetd बाट आह्वान गरिएको" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:466 | ||||
| msgid "INETD" | ||||
| msgstr "INETD" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:500 | ||||
| #: ../src/daemon/gnuserv.c:498 | ||||
| #, c-format | ||||
| msgid "" | ||||
| "Error on option %s: %s.\n" | ||||
| "Run '%s --help' to see a full list of available command line options.\n" | ||||
| msgstr "" | ||||
| "%s: %s विकल्पमा त्रुटि।\n" | ||||
| "उपलब्ध आदेश लाइन विकल्पहरूको एउटा पूर्ण सूची हेर्नका लागि '%s --मद्दत' चलाउनुहोस्।\n" | ||||
| msgid "Run '%s --help' to see a full list of available command line options.\n" | ||||
| msgstr "उपलब्ध आदेश लाइन विकल्पको पूरै सूची हेर्न  '%s --मद्दत' चलाउनुहोस् ।\n" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:29 ../sysdeps/sun4/siglist.c:29 | ||||
| #: ../sysdeps/osf1/siglist.c:27 ../sysdeps/sun4/siglist.c:27 | ||||
| msgid "Hangup" | ||||
| msgstr "ह्याङ अप" | ||||
| msgstr "ह्याङअप" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:30 ../sysdeps/sun4/siglist.c:30 | ||||
| #: ../sysdeps/osf1/siglist.c:28 ../sysdeps/sun4/siglist.c:28 | ||||
| msgid "Interrupt" | ||||
| msgstr "रोकावट" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:31 ../sysdeps/sun4/siglist.c:31 | ||||
| #: ../sysdeps/osf1/siglist.c:29 ../sysdeps/sun4/siglist.c:29 | ||||
| msgid "Quit" | ||||
| msgstr "अन्त्य गर्नुहोस्" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:32 ../sysdeps/sun4/siglist.c:32 | ||||
| #: ../sysdeps/osf1/siglist.c:30 ../sysdeps/sun4/siglist.c:30 | ||||
| msgid "Illegal instruction" | ||||
| msgstr "अवैध निर्देशन" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:33 ../sysdeps/sun4/siglist.c:33 | ||||
| #: ../sysdeps/osf1/siglist.c:31 ../sysdeps/sun4/siglist.c:31 | ||||
| msgid "Trace trap" | ||||
| msgstr "पदचिन्ह ट्रयाप" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:34 ../sysdeps/sun4/siglist.c:34 | ||||
| #: ../sysdeps/osf1/siglist.c:32 ../sysdeps/sun4/siglist.c:32 | ||||
| msgid "Abort" | ||||
| msgstr "परित्याग गर्नुहोस्" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:35 ../sysdeps/sun4/siglist.c:35 | ||||
| #: ../sysdeps/osf1/siglist.c:33 ../sysdeps/sun4/siglist.c:33 | ||||
| msgid "EMT error" | ||||
| msgstr "EMT त्रुटि" | ||||
| msgstr "इएमटी (EMT) त्रुटि" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:36 ../sysdeps/sun4/siglist.c:36 | ||||
| #: ../sysdeps/osf1/siglist.c:34 ../sysdeps/sun4/siglist.c:34 | ||||
| msgid "Floating-point exception" | ||||
| msgstr "उत्प्लावन बिन्दु अपवाद" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:37 ../sysdeps/sun4/siglist.c:37 | ||||
| #: ../sysdeps/osf1/siglist.c:35 ../sysdeps/sun4/siglist.c:35 | ||||
| msgid "Kill" | ||||
| msgstr "नष्ट गर्नुहोस्" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:38 ../sysdeps/sun4/siglist.c:38 | ||||
| #: ../sysdeps/osf1/siglist.c:36 ../sysdeps/sun4/siglist.c:36 | ||||
| msgid "Bus error" | ||||
| msgstr "बस त्रुटि" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:39 ../sysdeps/sun4/siglist.c:39 | ||||
| #: ../sysdeps/osf1/siglist.c:37 ../sysdeps/sun4/siglist.c:37 | ||||
| msgid "Segmentation violation" | ||||
| msgstr "खण्डीकरण खण्डन" | ||||
| msgstr "खण्डीकरण बिखण्डन" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:40 ../sysdeps/sun4/siglist.c:40 | ||||
| #: ../sysdeps/osf1/siglist.c:38 ../sysdeps/sun4/siglist.c:38 | ||||
| msgid "Bad argument to system call" | ||||
| msgstr "प्रणाली कलमा खराब तर्क" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:41 ../sysdeps/sun4/siglist.c:41 | ||||
| #: ../sysdeps/osf1/siglist.c:39 ../sysdeps/sun4/siglist.c:39 | ||||
| msgid "Broken pipe" | ||||
| msgstr "विच्छेद पाइप" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:42 ../sysdeps/sun4/siglist.c:42 | ||||
| #: ../sysdeps/osf1/siglist.c:40 ../sysdeps/sun4/siglist.c:40 | ||||
| msgid "Alarm clock" | ||||
| msgstr "सचेतक घडि" | ||||
| msgstr "सचेतक घडी" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:43 ../sysdeps/sun4/siglist.c:43 | ||||
| #: ../sysdeps/osf1/siglist.c:41 ../sysdeps/sun4/siglist.c:41 | ||||
| msgid "Termination" | ||||
| msgstr "समाप्ति" | ||||
| msgstr "अन्त्य" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:44 ../sysdeps/sun4/siglist.c:44 | ||||
| #: ../sysdeps/osf1/siglist.c:42 ../sysdeps/sun4/siglist.c:42 | ||||
| msgid "Urgent condition on socket" | ||||
| msgstr "सकेटमा आकस्मिक अवस्था" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:45 ../sysdeps/sun4/siglist.c:45 | ||||
| #: ../sysdeps/osf1/siglist.c:43 ../sysdeps/sun4/siglist.c:43 | ||||
| msgid "Stop" | ||||
| msgstr "रोक्नुहोस्" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:46 ../sysdeps/sun4/siglist.c:46 | ||||
| #: ../sysdeps/osf1/siglist.c:44 ../sysdeps/sun4/siglist.c:44 | ||||
| msgid "Keyboard stop" | ||||
| msgstr "कुञ्जिपाटी बन्द" | ||||
| msgstr "कुञ्जिपाटी बन्द गर्नुहोस्" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:47 ../sysdeps/sun4/siglist.c:47 | ||||
| #: ../sysdeps/osf1/siglist.c:45 ../sysdeps/sun4/siglist.c:45 | ||||
| msgid "Continue" | ||||
| msgstr "जारी राख्नुहोस्" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:48 ../sysdeps/sun4/siglist.c:48 | ||||
| #: ../sysdeps/osf1/siglist.c:46 ../sysdeps/sun4/siglist.c:46 | ||||
| msgid "Child status has changed" | ||||
| msgstr "चाइल्ड वस्तुस्थिति परिवर्तन गरिएको छ" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:49 ../sysdeps/sun4/siglist.c:49 | ||||
| #: ../sysdeps/osf1/siglist.c:47 ../sysdeps/sun4/siglist.c:47 | ||||
| msgid "Background read from tty" | ||||
| msgstr "टिटिवाइ बाट पृष्ठभूमि पढ्नुहोस्" | ||||
| msgstr "tty बाट पृष्ठभूमि पढ्नुहोस्" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:48 ../sysdeps/sun4/siglist.c:48 | ||||
| msgid "Background write to tty" | ||||
| msgstr "tty मा पृष्ठभूमि लेख्नुहोस्" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:49 ../sysdeps/sun4/siglist.c:49 | ||||
| msgid "I/O now possible" | ||||
| msgstr "I/O अब सम्भव छ" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:50 ../sysdeps/sun4/siglist.c:50 | ||||
| msgid "Background write to tty" | ||||
| msgstr "टिटिवाइ बाट पृष्ठभूमि लेख्नुहोस्" | ||||
| msgid "CPU limit exceeded" | ||||
| msgstr "सीपीयू (CPU) सीमा नाघ्यो" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:51 ../sysdeps/sun4/siglist.c:51 | ||||
| msgid "I/O now possible" | ||||
| msgstr "I/O अब सम्भव" | ||||
| msgid "File size limit exceeded" | ||||
| msgstr "फाइल साइज सीमा नाघ्यो" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:52 ../sysdeps/sun4/siglist.c:52 | ||||
| msgid "CPU limit exceeded" | ||||
| msgstr "CPU को सीमा नाघ्यो" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:53 ../sysdeps/sun4/siglist.c:53 | ||||
| msgid "File size limit exceeded" | ||||
| msgstr "फाइल साइजको सीमा नाघ्यो" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:54 ../sysdeps/sun4/siglist.c:54 | ||||
| msgid "Virtual alarm clock" | ||||
| msgstr "अवास्तविक सचेतक घडी" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:55 ../sysdeps/sun4/siglist.c:55 | ||||
| #: ../sysdeps/osf1/siglist.c:53 ../sysdeps/sun4/siglist.c:53 | ||||
| msgid "Profiling alarm clock" | ||||
| msgstr "सचेतक घडीको प्रोफाइल हुँदैछ" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:56 ../sysdeps/sun4/siglist.c:56 | ||||
| #: ../sysdeps/osf1/siglist.c:54 ../sysdeps/sun4/siglist.c:54 | ||||
| msgid "Window size change" | ||||
| msgstr "सञ्झ्याल साइज परिवर्तन" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:57 ../sysdeps/sun4/siglist.c:57 | ||||
| #: ../sysdeps/osf1/siglist.c:55 ../sysdeps/sun4/siglist.c:55 | ||||
| msgid "Information request" | ||||
| msgstr "सूचना अनुरोध" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:58 ../sysdeps/sun4/siglist.c:58 | ||||
| #: ../sysdeps/osf1/siglist.c:56 ../sysdeps/sun4/siglist.c:56 | ||||
| msgid "User defined signal 1" | ||||
| msgstr "प्रयोगकर्ता परिभषित सङ्केत १" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:59 ../sysdeps/sun4/siglist.c:59 | ||||
| #: ../sysdeps/osf1/siglist.c:57 ../sysdeps/sun4/siglist.c:57 | ||||
| msgid "User defined signal 2" | ||||
| msgstr "प्रयोगकर्ता परिभषित सङ्केत २" | ||||
|  | ||||
|   | ||||
							
								
								
									
										21
									
								
								po/oc.po
									
									
									
									
									
								
							
							
						
						
									
										21
									
								
								po/oc.po
									
									
									
									
									
								
							| @@ -1,16 +1,15 @@ | ||||
| # Occitan translation of libgtop. | ||||
| # Copyright (C) 1998-2004 Free Software Foundation, Inc. | ||||
| # Copyright (C) 1998-2004, 2007 Free Software Foundation, Inc. | ||||
| # This file is distributed under the GNU General Public License Version 2. | ||||
| # | ||||
| # Yannig MARCHEGAY (yannig@marchegay.org) - 2006-2007 | ||||
| # | ||||
| # Yannig Marchegay (Kokoyaya) <yannig@marchegay.org> - 2006-2007 | ||||
| msgid "" | ||||
| msgstr "" | ||||
| "Project-Id-Version: libgtop 2.9.91\n" | ||||
| "Project-Id-Version: oc\n" | ||||
| "Report-Msgid-Bugs-To: \n" | ||||
| "POT-Creation-Date: 2007-08-21 12:14+0100\n" | ||||
| "PO-Revision-Date: 2007-08-21 00:51+0200\n" | ||||
| "Last-Translator: Yannig MARCHEGAY (Kokoyaya) <yannig@marchegay.org>\n" | ||||
| "POT-Creation-Date: 2008-02-19 20:26+0100\n" | ||||
| "PO-Revision-Date: 2007-11-20 14:32+0100\n" | ||||
| "Last-Translator: Yannig Marchegay (Kokoyaya) <yannig@marchegay.org>\n" | ||||
| "Language-Team: Occitan (post 1500) <ubuntu-l10n-oci@lists.ubuntu.com>\n" | ||||
| "MIME-Version: 1.0\n" | ||||
| "Content-Type: text/plain; charset=UTF-8\n" | ||||
| @@ -21,8 +20,8 @@ msgstr "" | ||||
| #, c-format | ||||
| msgid "read %d byte" | ||||
| msgid_plural "read %d bytes" | ||||
| msgstr[0] "" | ||||
| msgstr[1] "" | ||||
| msgstr[0] "a legit %d octet" | ||||
| msgstr[1] "a legits %d octets" | ||||
|  | ||||
| #: ../lib/read_data.c:51 | ||||
| msgid "read data size" | ||||
| @@ -39,8 +38,8 @@ msgstr[1] "" | ||||
| #, c-format | ||||
| msgid "wrote %d byte" | ||||
| msgid_plural "wrote %d bytes" | ||||
| msgstr[0] "" | ||||
| msgstr[1] "" | ||||
| msgstr[0] "a escrich %d octet" | ||||
| msgstr[1] "a escriches %d octets" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:458 | ||||
| msgid "Enable debugging" | ||||
|   | ||||
							
								
								
									
										112
									
								
								po/pl.po
									
									
									
									
									
								
							
							
						
						
									
										112
									
								
								po/pl.po
									
									
									
									
									
								
							| @@ -3,7 +3,7 @@ msgid "" | ||||
| msgstr "" | ||||
| "Project-Id-Version: libgtop\n" | ||||
| "Report-Msgid-Bugs-To: \n" | ||||
| "POT-Creation-Date: 2006-11-12 16:29+0100\n" | ||||
| "POT-Creation-Date: 2007-09-17 21:16+0200\n" | ||||
| "PO-Revision-Date: 2002-07-05 19:13+0200\n" | ||||
| "Last-Translator: GNOME PL Team <translators@gnomepl.org>\n" | ||||
| "Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n" | ||||
| @@ -13,7 +13,7 @@ msgstr "" | ||||
| "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " | ||||
| "|| n%100>=20) ? 1 : 2);\n" | ||||
|  | ||||
| #: ../lib/read.c:65 | ||||
| #: ../lib/read.c:51 | ||||
| #, c-format | ||||
| msgid "read %d byte" | ||||
| msgid_plural "read %d bytes" | ||||
| @@ -21,11 +21,11 @@ msgstr[0] "odczyt %d bajtu" | ||||
| msgstr[1] "odczyt %d bajtów" | ||||
| msgstr[2] "odczyt %d bajtów" | ||||
|  | ||||
| #: ../lib/read_data.c:53 | ||||
| #: ../lib/read_data.c:51 | ||||
| msgid "read data size" | ||||
| msgstr "odczyt rozmiaru danych" | ||||
|  | ||||
| #: ../lib/read_data.c:72 | ||||
| #: ../lib/read_data.c:70 | ||||
| #, c-format | ||||
| msgid "read %lu byte of data" | ||||
| msgid_plural "read %lu bytes of data" | ||||
| @@ -33,7 +33,7 @@ msgstr[0] "odczytano jeden bajt danych" | ||||
| msgstr[1] "odczytano %lu bajty danych" | ||||
| msgstr[2] "odczytano %lu bajtów danych" | ||||
|  | ||||
| #: ../lib/write.c:53 | ||||
| #: ../lib/write.c:51 | ||||
| #, c-format | ||||
| msgid "wrote %d byte" | ||||
| msgid_plural "wrote %d bytes" | ||||
| @@ -41,167 +41,159 @@ msgstr[0] "zapisano jeden bajt" | ||||
| msgstr[1] "zapisano %d bajty" | ||||
| msgstr[2] "zapisano %d bajtów" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:460 | ||||
| #: ../src/daemon/gnuserv.c:458 | ||||
| msgid "Enable debugging" | ||||
| msgstr "Uaktywnia śledzenie" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:460 | ||||
| msgid "DEBUG" | ||||
| msgstr "ŚLEDZENIE" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:462 | ||||
| msgid "Enable verbose output" | ||||
| msgstr "Uaktywnia informowanie o przebiegu" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:462 | ||||
| msgid "VERBOSE" | ||||
| msgstr "PRZEBIEG" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:464 | ||||
| msgid "Don't fork into background" | ||||
| msgstr "Uruchamia program bez przechodzenia w tło" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:464 | ||||
| msgid "NO-DAEMON" | ||||
| msgstr "NIE-DEMON" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:466 | ||||
| msgid "Invoked from inetd" | ||||
| msgstr "Wywołanie przez inetd" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:466 | ||||
| msgid "INETD" | ||||
| msgstr "INETD" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:500 | ||||
| #: ../src/daemon/gnuserv.c:498 | ||||
| #, c-format | ||||
| msgid "" | ||||
| "Error on option %s: %s.\n" | ||||
| "Run '%s --help' to see a full list of available command line options.\n" | ||||
| msgstr "" | ||||
| "Błędna opcja %s: %s.\n" | ||||
| "Uruchom \"%s --help\" aby wyświetlić pełną listę dostępnych opcji.\n" | ||||
| msgid "Run '%s --help' to see a full list of available command line options.\n" | ||||
| msgstr "Uruchom \"%s --help\" aby wyświetlić pełną listę dostępnych opcji.\n" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:29 ../sysdeps/sun4/siglist.c:29 | ||||
| #: ../sysdeps/osf1/siglist.c:27 ../sysdeps/sun4/siglist.c:27 | ||||
| msgid "Hangup" | ||||
| msgstr "Zawieszenie" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:30 ../sysdeps/sun4/siglist.c:30 | ||||
| #: ../sysdeps/osf1/siglist.c:28 ../sysdeps/sun4/siglist.c:28 | ||||
| msgid "Interrupt" | ||||
| msgstr "Przerwanie (Interrupt)" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:31 ../sysdeps/sun4/siglist.c:31 | ||||
| #: ../sysdeps/osf1/siglist.c:29 ../sysdeps/sun4/siglist.c:29 | ||||
| msgid "Quit" | ||||
| msgstr "Zakończenie" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:32 ../sysdeps/sun4/siglist.c:32 | ||||
| #: ../sysdeps/osf1/siglist.c:30 ../sysdeps/sun4/siglist.c:30 | ||||
| msgid "Illegal instruction" | ||||
| msgstr "Niedozwolona instrukcja" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:33 ../sysdeps/sun4/siglist.c:33 | ||||
| #: ../sysdeps/osf1/siglist.c:31 ../sysdeps/sun4/siglist.c:31 | ||||
| msgid "Trace trap" | ||||
| msgstr "Trace trap" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:34 ../sysdeps/sun4/siglist.c:34 | ||||
| #: ../sysdeps/osf1/siglist.c:32 ../sysdeps/sun4/siglist.c:32 | ||||
| msgid "Abort" | ||||
| msgstr "Przerwanie (Abort)" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:35 ../sysdeps/sun4/siglist.c:35 | ||||
| #: ../sysdeps/osf1/siglist.c:33 ../sysdeps/sun4/siglist.c:33 | ||||
| msgid "EMT error" | ||||
| msgstr "Błąd EMT" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:36 ../sysdeps/sun4/siglist.c:36 | ||||
| #: ../sysdeps/osf1/siglist.c:34 ../sysdeps/sun4/siglist.c:34 | ||||
| msgid "Floating-point exception" | ||||
| msgstr "Wyjątek związany z liczbą zmiennoprzecinkową" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:37 ../sysdeps/sun4/siglist.c:37 | ||||
| #: ../sysdeps/osf1/siglist.c:35 ../sysdeps/sun4/siglist.c:35 | ||||
| msgid "Kill" | ||||
| msgstr "Usunięcie (Kill)" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:38 ../sysdeps/sun4/siglist.c:38 | ||||
| #: ../sysdeps/osf1/siglist.c:36 ../sysdeps/sun4/siglist.c:36 | ||||
| msgid "Bus error" | ||||
| msgstr "Błąd szyny" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:39 ../sysdeps/sun4/siglist.c:39 | ||||
| #: ../sysdeps/osf1/siglist.c:37 ../sysdeps/sun4/siglist.c:37 | ||||
| msgid "Segmentation violation" | ||||
| msgstr "Naruszenie segmentacji" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:40 ../sysdeps/sun4/siglist.c:40 | ||||
| #: ../sysdeps/osf1/siglist.c:38 ../sysdeps/sun4/siglist.c:38 | ||||
| msgid "Bad argument to system call" | ||||
| msgstr "Niepoprawny parametr wywołania systemowego" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:41 ../sysdeps/sun4/siglist.c:41 | ||||
| #: ../sysdeps/osf1/siglist.c:39 ../sysdeps/sun4/siglist.c:39 | ||||
| msgid "Broken pipe" | ||||
| msgstr "Przerwany potok" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:42 ../sysdeps/sun4/siglist.c:42 | ||||
| #: ../sysdeps/osf1/siglist.c:40 ../sysdeps/sun4/siglist.c:40 | ||||
| msgid "Alarm clock" | ||||
| msgstr "Budzik" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:43 ../sysdeps/sun4/siglist.c:43 | ||||
| #: ../sysdeps/osf1/siglist.c:41 ../sysdeps/sun4/siglist.c:41 | ||||
| msgid "Termination" | ||||
| msgstr "Zakończenie" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:44 ../sysdeps/sun4/siglist.c:44 | ||||
| #: ../sysdeps/osf1/siglist.c:42 ../sysdeps/sun4/siglist.c:42 | ||||
| msgid "Urgent condition on socket" | ||||
| msgstr "Pilny warunek związany z gniazdem" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:45 ../sysdeps/sun4/siglist.c:45 | ||||
| #: ../sysdeps/osf1/siglist.c:43 ../sysdeps/sun4/siglist.c:43 | ||||
| msgid "Stop" | ||||
| msgstr "Zatrzymanie (Stop)" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:46 ../sysdeps/sun4/siglist.c:46 | ||||
| #: ../sysdeps/osf1/siglist.c:44 ../sysdeps/sun4/siglist.c:44 | ||||
| msgid "Keyboard stop" | ||||
| msgstr "Zatrzymanie klawiatury" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:47 ../sysdeps/sun4/siglist.c:47 | ||||
| #: ../sysdeps/osf1/siglist.c:45 ../sysdeps/sun4/siglist.c:45 | ||||
| msgid "Continue" | ||||
| msgstr "Kontynuacja" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:48 ../sysdeps/sun4/siglist.c:48 | ||||
| #: ../sysdeps/osf1/siglist.c:46 ../sysdeps/sun4/siglist.c:46 | ||||
| msgid "Child status has changed" | ||||
| msgstr "Zmiana statusu proc. potomnego" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:49 ../sysdeps/sun4/siglist.c:49 | ||||
| #: ../sysdeps/osf1/siglist.c:47 ../sysdeps/sun4/siglist.c:47 | ||||
| msgid "Background read from tty" | ||||
| msgstr "Odczyt w tle z urządzenia tty" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:50 ../sysdeps/sun4/siglist.c:50 | ||||
| #: ../sysdeps/osf1/siglist.c:48 ../sysdeps/sun4/siglist.c:48 | ||||
| msgid "Background write to tty" | ||||
| msgstr "Zapis w tle do urządzenia tty" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:51 ../sysdeps/sun4/siglist.c:51 | ||||
| #: ../sysdeps/osf1/siglist.c:49 ../sysdeps/sun4/siglist.c:49 | ||||
| msgid "I/O now possible" | ||||
| msgstr "Wejście/wyjście teraz dostępne" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:52 ../sysdeps/sun4/siglist.c:52 | ||||
| #: ../sysdeps/osf1/siglist.c:50 ../sysdeps/sun4/siglist.c:50 | ||||
| msgid "CPU limit exceeded" | ||||
| msgstr "Przekroczenie limitu CPU" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:53 ../sysdeps/sun4/siglist.c:53 | ||||
| #: ../sysdeps/osf1/siglist.c:51 ../sysdeps/sun4/siglist.c:51 | ||||
| msgid "File size limit exceeded" | ||||
| msgstr "Przekroczenie limitu rozm. plików" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:54 ../sysdeps/sun4/siglist.c:54 | ||||
| #: ../sysdeps/osf1/siglist.c:52 ../sysdeps/sun4/siglist.c:52 | ||||
| msgid "Virtual alarm clock" | ||||
| msgstr "Wirtualny budzik" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:55 ../sysdeps/sun4/siglist.c:55 | ||||
| #: ../sysdeps/osf1/siglist.c:53 ../sysdeps/sun4/siglist.c:53 | ||||
| msgid "Profiling alarm clock" | ||||
| msgstr "Profilowanie budzika" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:56 ../sysdeps/sun4/siglist.c:56 | ||||
| #: ../sysdeps/osf1/siglist.c:54 ../sysdeps/sun4/siglist.c:54 | ||||
| msgid "Window size change" | ||||
| msgstr "Zmiana rozmiaru okna" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:57 ../sysdeps/sun4/siglist.c:57 | ||||
| #: ../sysdeps/osf1/siglist.c:55 ../sysdeps/sun4/siglist.c:55 | ||||
| msgid "Information request" | ||||
| msgstr "Żądanie informacji" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:58 ../sysdeps/sun4/siglist.c:58 | ||||
| #: ../sysdeps/osf1/siglist.c:56 ../sysdeps/sun4/siglist.c:56 | ||||
| msgid "User defined signal 1" | ||||
| msgstr "1. sygnał zdefiniowany przez użytkownika" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:59 ../sysdeps/sun4/siglist.c:59 | ||||
| #: ../sysdeps/osf1/siglist.c:57 ../sysdeps/sun4/siglist.c:57 | ||||
| msgid "User defined signal 2" | ||||
| msgstr "2. sygnał zdefiniowany przez użytkownika" | ||||
|  | ||||
| #~ msgid "DEBUG" | ||||
| #~ msgstr "ŚLEDZENIE" | ||||
|  | ||||
| #~ msgid "VERBOSE" | ||||
| #~ msgstr "PRZEBIEG" | ||||
|  | ||||
| #~ msgid "NO-DAEMON" | ||||
| #~ msgstr "NIE-DEMON" | ||||
|  | ||||
| #~ msgid "INETD" | ||||
| #~ msgstr "INETD" | ||||
|   | ||||
							
								
								
									
										226
									
								
								po/sl.po
									
									
									
									
									
								
							
							
						
						
									
										226
									
								
								po/sl.po
									
									
									
									
									
								
							| @@ -1,246 +1,234 @@ | ||||
| # Slovenian translation of libgtop | ||||
| # Copyright (C) 2000 Free Software Foundation, Inc. | ||||
| # Andraz Tori <andraz.tori1@guest.arnes.si>, 2000. | ||||
| # Matic Žgur <mr.zgur@gmail.com>, 2006. | ||||
| # Matej Urbančič <matej.urban@gmail.com>, 2007. | ||||
| # | ||||
| msgid "" | ||||
| msgstr "" | ||||
| "Project-Id-Version: libgtop\n" | ||||
| "Report-Msgid-Bugs-To: \n" | ||||
| "POT-Creation-Date: 2006-08-14 08:17+0200\n" | ||||
| "PO-Revision-Date: 2006-08-14 11:47+0100\n" | ||||
| "Last-Translator: Matic Žgur <mr.zgur@gmail.com>\n" | ||||
| "POT-Creation-Date: 2007-05-14 03:41+0100\n" | ||||
| "PO-Revision-Date: 2007-10-18 16:10+0100\n" | ||||
| "Last-Translator: Matej Urbančič <matej.urban@gmail.com>\n" | ||||
| "Language-Team: Slovenian <sl@li.org>\n" | ||||
| "MIME-Version: 1.0\n" | ||||
| "Content-Type: text/plain; charset=UTF-8\n" | ||||
| "Content-Transfer-Encoding: 8bit\n" | ||||
| "Plural-Forms: nplurals=4; plural=n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3\n" | ||||
| "Plural-Forms: nplurals=4; plural=(n%100==1 ? 1 : n%100==2 ? 2 : n%100==3 || n%100==4 ? 3 : 0);\n" | ||||
| "X-Poedit-Language: Slovenian\n" | ||||
|  | ||||
| #: ../lib/read.c:65 | ||||
| #: ../lib/read.c:51 | ||||
| #, c-format | ||||
| msgid "read %d byte" | ||||
| msgid_plural "read %d bytes" | ||||
| msgstr[0] "prebran %d bajt" | ||||
| msgstr[1] "prebrana %d bajta" | ||||
| msgstr[2] "prebrani %d bajti" | ||||
| msgstr[3] "prebranih %d bajtov" | ||||
| msgstr[0] "prebranih %d bajtov" | ||||
| msgstr[1] "prebran %d bajt" | ||||
| msgstr[2] "prebrana %d bajta" | ||||
| msgstr[3] "prebrani %d bajti" | ||||
|  | ||||
| #: ../lib/read_data.c:53 | ||||
| #: ../lib/read_data.c:51 | ||||
| msgid "read data size" | ||||
| msgstr "prebrana velikost podatkov" | ||||
|  | ||||
| #: ../lib/read_data.c:72 | ||||
| #: ../lib/read_data.c:70 | ||||
| #, c-format | ||||
| msgid "read %lu byte of data" | ||||
| msgid_plural "read %lu bytes of data" | ||||
| msgstr[0] "prebran %lu bajt podatkov" | ||||
| msgstr[1] "prebrana %lu bajta podatkov" | ||||
| msgstr[2] "prebrani %lu bajti podatkov" | ||||
| msgstr[3] "prebranih %lu bajtov podatkov" | ||||
| msgstr[0] "prebranih %lu bajtov podatkov" | ||||
| msgstr[1] "prebran %lu bajt podatkov" | ||||
| msgstr[2] "prebrana %lu bajta podatkov" | ||||
| msgstr[3] "prebrani %lu bajti podatkov" | ||||
|  | ||||
| #: ../lib/write.c:53 | ||||
| #: ../lib/write.c:51 | ||||
| #, c-format | ||||
| msgid "wrote %d byte" | ||||
| msgid_plural "wrote %d bytes" | ||||
| msgstr[0] "zapisan %d bajt" | ||||
| msgstr[1] "zapisana %d bajta" | ||||
| msgstr[2] "zapisani %d bajti" | ||||
| msgstr[3] "zapisanih %d bajtov" | ||||
| msgstr[0] "zapisanih %d bajtov" | ||||
| msgstr[1] "zapisan %d bajt" | ||||
| msgstr[2] "zapisana %d bajta" | ||||
| msgstr[3] "zapisani %d bajti" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:460 | ||||
| #: ../src/daemon/gnuserv.c:458 | ||||
| msgid "Enable debugging" | ||||
| msgstr "Vključi razhroščevanje" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:460 | ||||
| msgid "DEBUG" | ||||
| msgstr "RAZHROŠČUJ" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:462 | ||||
| msgid "Enable verbose output" | ||||
| msgstr "Vključi zgovoren izhod" | ||||
| msgstr "Vključi podroben izpis" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:462 | ||||
| msgid "VERBOSE" | ||||
| msgstr "ZGOVOREN" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:464 | ||||
| msgid "Don't fork into background" | ||||
| msgstr "Ne razveji se v ozadje" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:464 | ||||
| msgid "NO-DAEMON" | ||||
| msgstr "NI-DEAMON" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:466 | ||||
| msgid "Invoked from inetd" | ||||
| msgstr "Poklican iz programa inetd" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:466 | ||||
| msgid "INETD" | ||||
| msgstr "INETD" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:500 | ||||
| #: ../src/daemon/gnuserv.c:498 | ||||
| #, c-format | ||||
| msgid "" | ||||
| "Error on option %s: %s.\n" | ||||
| "Run '%s --help' to see a full list of available command line options.\n" | ||||
| msgstr "" | ||||
| "Napaka ob možnosti %s: %s.\n" | ||||
| "Poženite '%s --help', če želite videti popoln seznam možnosti ukazne vrstice.\n" | ||||
| msgid "Run '%s --help' to see a full list of available command line options.\n" | ||||
| msgstr "Z zastavico '%s --help' se izpiše popoln seznam možnosti ukaza.\n" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:29 | ||||
| #: ../sysdeps/sun4/siglist.c:29 | ||||
| #: ../sysdeps/osf1/siglist.c:27 | ||||
| #: ../sysdeps/sun4/siglist.c:27 | ||||
| msgid "Hangup" | ||||
| msgstr "Odloži" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:30 | ||||
| #: ../sysdeps/sun4/siglist.c:30 | ||||
| #: ../sysdeps/osf1/siglist.c:28 | ||||
| #: ../sysdeps/sun4/siglist.c:28 | ||||
| msgid "Interrupt" | ||||
| msgstr "Prekinitev" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:31 | ||||
| #: ../sysdeps/sun4/siglist.c:31 | ||||
| #: ../sysdeps/osf1/siglist.c:29 | ||||
| #: ../sysdeps/sun4/siglist.c:29 | ||||
| msgid "Quit" | ||||
| msgstr "Izhod" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:32 | ||||
| #: ../sysdeps/sun4/siglist.c:32 | ||||
| #: ../sysdeps/osf1/siglist.c:30 | ||||
| #: ../sysdeps/sun4/siglist.c:30 | ||||
| msgid "Illegal instruction" | ||||
| msgstr "Neveljavn ukaz" | ||||
| msgstr "Neveljaven ukaz" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:33 | ||||
| #: ../sysdeps/sun4/siglist.c:33 | ||||
| #: ../sysdeps/osf1/siglist.c:31 | ||||
| #: ../sysdeps/sun4/siglist.c:31 | ||||
| msgid "Trace trap" | ||||
| msgstr "Past sledenja" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:34 | ||||
| #: ../sysdeps/sun4/siglist.c:34 | ||||
| #: ../sysdeps/osf1/siglist.c:32 | ||||
| #: ../sysdeps/sun4/siglist.c:32 | ||||
| msgid "Abort" | ||||
| msgstr "Prekini" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:35 | ||||
| #: ../sysdeps/sun4/siglist.c:35 | ||||
| #: ../sysdeps/osf1/siglist.c:33 | ||||
| #: ../sysdeps/sun4/siglist.c:33 | ||||
| msgid "EMT error" | ||||
| msgstr "Napaka EMT" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:36 | ||||
| #: ../sysdeps/sun4/siglist.c:36 | ||||
| #: ../sysdeps/osf1/siglist.c:34 | ||||
| #: ../sysdeps/sun4/siglist.c:34 | ||||
| msgid "Floating-point exception" | ||||
| msgstr "Izjema plavajoče vejice" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:37 | ||||
| #: ../sysdeps/sun4/siglist.c:37 | ||||
| #: ../sysdeps/osf1/siglist.c:35 | ||||
| #: ../sysdeps/sun4/siglist.c:35 | ||||
| msgid "Kill" | ||||
| msgstr "Ubij" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:38 | ||||
| #: ../sysdeps/sun4/siglist.c:38 | ||||
| #: ../sysdeps/osf1/siglist.c:36 | ||||
| #: ../sysdeps/sun4/siglist.c:36 | ||||
| msgid "Bus error" | ||||
| msgstr "Napaka vodila" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:37 | ||||
| #: ../sysdeps/sun4/siglist.c:37 | ||||
| msgid "Segmentation violation" | ||||
| msgstr "Segmentacijska napaka" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:38 | ||||
| #: ../sysdeps/sun4/siglist.c:38 | ||||
| msgid "Bad argument to system call" | ||||
| msgstr "Nepravilen argument za sistemski klic" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:39 | ||||
| #: ../sysdeps/sun4/siglist.c:39 | ||||
| msgid "Segmentation violation" | ||||
| msgstr "Segmentacijska kršitev" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:40 | ||||
| #: ../sysdeps/sun4/siglist.c:40 | ||||
| msgid "Bad argument to system call" | ||||
| msgstr "Slab argument sistemskemu klicu" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:41 | ||||
| #: ../sysdeps/sun4/siglist.c:41 | ||||
| msgid "Broken pipe" | ||||
| msgstr "Pretrgana cev" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:42 | ||||
| #: ../sysdeps/sun4/siglist.c:42 | ||||
| #: ../sysdeps/osf1/siglist.c:40 | ||||
| #: ../sysdeps/sun4/siglist.c:40 | ||||
| msgid "Alarm clock" | ||||
| msgstr "Budilka" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:43 | ||||
| #: ../sysdeps/sun4/siglist.c:43 | ||||
| #: ../sysdeps/osf1/siglist.c:41 | ||||
| #: ../sysdeps/sun4/siglist.c:41 | ||||
| msgid "Termination" | ||||
| msgstr "Zaključek" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:44 | ||||
| #: ../sysdeps/sun4/siglist.c:44 | ||||
| #: ../sysdeps/osf1/siglist.c:42 | ||||
| #: ../sysdeps/sun4/siglist.c:42 | ||||
| msgid "Urgent condition on socket" | ||||
| msgstr "Nujno stanje na vtiču" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:45 | ||||
| #: ../sysdeps/sun4/siglist.c:45 | ||||
| #: ../sysdeps/osf1/siglist.c:43 | ||||
| #: ../sysdeps/sun4/siglist.c:43 | ||||
| msgid "Stop" | ||||
| msgstr "Ustavi" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:46 | ||||
| #: ../sysdeps/sun4/siglist.c:46 | ||||
| #: ../sysdeps/osf1/siglist.c:44 | ||||
| #: ../sysdeps/sun4/siglist.c:44 | ||||
| msgid "Keyboard stop" | ||||
| msgstr "Ustavitev s tipkovnice" | ||||
| msgstr "Zaustavitev tipkovnice" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:47 | ||||
| #: ../sysdeps/sun4/siglist.c:47 | ||||
| #: ../sysdeps/osf1/siglist.c:45 | ||||
| #: ../sysdeps/sun4/siglist.c:45 | ||||
| msgid "Continue" | ||||
| msgstr "Nadaljuj" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:48 | ||||
| #: ../sysdeps/sun4/siglist.c:48 | ||||
| #: ../sysdeps/osf1/siglist.c:46 | ||||
| #: ../sysdeps/sun4/siglist.c:46 | ||||
| msgid "Child status has changed" | ||||
| msgstr "Stanje otroka se je spremenilo" | ||||
| msgstr "Stanje podrejenega procesa se je spremenilo" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:49 | ||||
| #: ../sysdeps/sun4/siglist.c:49 | ||||
| #: ../sysdeps/osf1/siglist.c:47 | ||||
| #: ../sysdeps/sun4/siglist.c:47 | ||||
| msgid "Background read from tty" | ||||
| msgstr "Branje s tty v ozadju" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:50 | ||||
| #: ../sysdeps/sun4/siglist.c:50 | ||||
| #: ../sysdeps/osf1/siglist.c:48 | ||||
| #: ../sysdeps/sun4/siglist.c:48 | ||||
| msgid "Background write to tty" | ||||
| msgstr "Pisanje na tty v ozadju" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:51 | ||||
| #: ../sysdeps/sun4/siglist.c:51 | ||||
| #: ../sysdeps/osf1/siglist.c:49 | ||||
| #: ../sysdeps/sun4/siglist.c:49 | ||||
| msgid "I/O now possible" | ||||
| msgstr "V/I sedaj možen" | ||||
| msgstr "V/I sedaj mogoč" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:52 | ||||
| #: ../sysdeps/sun4/siglist.c:52 | ||||
| #: ../sysdeps/osf1/siglist.c:50 | ||||
| #: ../sysdeps/sun4/siglist.c:50 | ||||
| msgid "CPU limit exceeded" | ||||
| msgstr "Prekoračena omejitev procesorja" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:53 | ||||
| #: ../sysdeps/sun4/siglist.c:53 | ||||
| #: ../sysdeps/osf1/siglist.c:51 | ||||
| #: ../sysdeps/sun4/siglist.c:51 | ||||
| msgid "File size limit exceeded" | ||||
| msgstr "Prekoračena omejitev dolžine datoteke" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:54 | ||||
| #: ../sysdeps/sun4/siglist.c:54 | ||||
| #: ../sysdeps/osf1/siglist.c:52 | ||||
| #: ../sysdeps/sun4/siglist.c:52 | ||||
| msgid "Virtual alarm clock" | ||||
| msgstr "Navidezna budilka" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:55 | ||||
| #: ../sysdeps/sun4/siglist.c:55 | ||||
| #: ../sysdeps/osf1/siglist.c:53 | ||||
| #: ../sysdeps/sun4/siglist.c:53 | ||||
| msgid "Profiling alarm clock" | ||||
| msgstr "Budilka profiliranja" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:56 | ||||
| #: ../sysdeps/sun4/siglist.c:56 | ||||
| #: ../sysdeps/osf1/siglist.c:54 | ||||
| #: ../sysdeps/sun4/siglist.c:54 | ||||
| msgid "Window size change" | ||||
| msgstr "Sprememba velikosti okna" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:57 | ||||
| #: ../sysdeps/sun4/siglist.c:57 | ||||
| #: ../sysdeps/osf1/siglist.c:55 | ||||
| #: ../sysdeps/sun4/siglist.c:55 | ||||
| msgid "Information request" | ||||
| msgstr "Zahteva po podatkih" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:58 | ||||
| #: ../sysdeps/sun4/siglist.c:58 | ||||
| #: ../sysdeps/osf1/siglist.c:56 | ||||
| #: ../sysdeps/sun4/siglist.c:56 | ||||
| msgid "User defined signal 1" | ||||
| msgstr "Uporabniško definiran signal 1" | ||||
| msgstr "Uporabniško določen signal 1" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:59 | ||||
| #: ../sysdeps/sun4/siglist.c:59 | ||||
| #: ../sysdeps/osf1/siglist.c:57 | ||||
| #: ../sysdeps/sun4/siglist.c:57 | ||||
| msgid "User defined signal 2" | ||||
| msgstr "Uporabniško definiran signal 2" | ||||
| msgstr "Uporabniško določen signal 2" | ||||
|  | ||||
| #~ msgid "DEBUG" | ||||
| #~ msgstr "RAZHROŠČUJ" | ||||
| #~ msgid "VERBOSE" | ||||
| #~ msgstr "ZGOVOREN" | ||||
| #~ msgid "NO-DAEMON" | ||||
| #~ msgstr "NI-DEAMON" | ||||
| #~ msgid "INETD" | ||||
| #~ msgstr "INETD" | ||||
|  | ||||
|   | ||||
							
								
								
									
										116
									
								
								po/zh_HK.po
									
									
									
									
									
								
							
							
						
						
									
										116
									
								
								po/zh_HK.po
									
									
									
									
									
								
							| @@ -4,10 +4,10 @@ | ||||
| #  | ||||
| msgid "" | ||||
| msgstr "" | ||||
| "Project-Id-Version: libgtop 2.9.92\n" | ||||
| "Project-Id-Version: libgtop 2.2.5\n" | ||||
| "Report-Msgid-Bugs-To: \n" | ||||
| "POT-Creation-Date: 2006-06-26 23:04+0800\n" | ||||
| "PO-Revision-Date: 2006-06-26 23:06+0800\n" | ||||
| "POT-Creation-Date: 2008-02-14 20:10+0800\n" | ||||
| "PO-Revision-Date: 2008-02-14 20:12+0800\n" | ||||
| "Last-Translator: Abel Cheung <abel@oaka.org>\n" | ||||
| "Language-Team: Chinese (Hong Kong) <community@linuxhall.org>\n" | ||||
| "MIME-Version: 1.0\n" | ||||
| @@ -15,189 +15,181 @@ msgstr "" | ||||
| "Content-Transfer-Encoding: 8bit\n" | ||||
| "Plural-Forms: nplurals=1; plural=0;\n" | ||||
|  | ||||
| #: ../lib/read.c:65 | ||||
| #: ../lib/read.c:51 | ||||
| #, c-format | ||||
| msgid "read %d byte" | ||||
| msgid_plural "read %d bytes" | ||||
| msgstr[0] "讀入 %d 位元組" | ||||
|  | ||||
| #: ../lib/read_data.c:53 | ||||
| #: ../lib/read_data.c:51 | ||||
| msgid "read data size" | ||||
| msgstr "讀入資料大小" | ||||
|  | ||||
| #: ../lib/read_data.c:72 | ||||
| #: ../lib/read_data.c:70 | ||||
| #, c-format | ||||
| msgid "read %lu byte of data" | ||||
| msgid_plural "read %lu bytes of data" | ||||
| msgstr[0] "讀入 %lu 位元組的資料" | ||||
|  | ||||
| #: ../lib/write.c:53 | ||||
| #: ../lib/write.c:51 | ||||
| #, c-format | ||||
| msgid "wrote %d byte" | ||||
| msgid_plural "wrote %d bytes" | ||||
| msgstr[0] "寫入 %d 位元組" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:460 | ||||
| #: ../src/daemon/gnuserv.c:458 | ||||
| msgid "Enable debugging" | ||||
| msgstr "啟用偵錯功能" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:460 | ||||
| msgid "DEBUG" | ||||
| msgstr "偵錯" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:462 | ||||
| msgid "Enable verbose output" | ||||
| msgstr "顯示詳細的輸出訊息" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:462 | ||||
| msgid "VERBOSE" | ||||
| msgstr "詳細訊息" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:464 | ||||
| msgid "Don't fork into background" | ||||
| msgstr "不要放置於背景執行" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:464 | ||||
| msgid "NO-DAEMON" | ||||
| msgstr "NO-DAEMON" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:466 | ||||
| msgid "Invoked from inetd" | ||||
| msgstr "透過 inetd 執行" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:466 | ||||
| msgid "INETD" | ||||
| msgstr "INETD" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:500 | ||||
| #: ../src/daemon/gnuserv.c:498 | ||||
| #, c-format | ||||
| msgid "" | ||||
| "Error on option %s: %s.\n" | ||||
| "Run '%s --help' to see a full list of available command line options.\n" | ||||
| msgstr "" | ||||
| "選項 %s 發生錯誤:%s。\n" | ||||
| "請執行‘%s --help’查看完整的指令列選項清單。\n" | ||||
| msgid "Run '%s --help' to see a full list of available command line options.\n" | ||||
| msgstr "請執行‘%s --help’查看完整的指令列選項清單。\n" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:29 ../sysdeps/sun4/siglist.c:29 | ||||
| #: ../sysdeps/osf1/siglist.c:27 ../sysdeps/sun4/siglist.c:27 | ||||
| msgid "Hangup" | ||||
| msgstr "掛斷 (Hangup)" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:30 ../sysdeps/sun4/siglist.c:30 | ||||
| #: ../sysdeps/osf1/siglist.c:28 ../sysdeps/sun4/siglist.c:28 | ||||
| msgid "Interrupt" | ||||
| msgstr "中斷 (Interrupt)" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:31 ../sysdeps/sun4/siglist.c:31 | ||||
| #: ../sysdeps/osf1/siglist.c:29 ../sysdeps/sun4/siglist.c:29 | ||||
| msgid "Quit" | ||||
| msgstr "退出 (Quit)" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:32 ../sysdeps/sun4/siglist.c:32 | ||||
| #: ../sysdeps/osf1/siglist.c:30 ../sysdeps/sun4/siglist.c:30 | ||||
| msgid "Illegal instruction" | ||||
| msgstr "不合法硬件指示" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:33 ../sysdeps/sun4/siglist.c:33 | ||||
| #: ../sysdeps/osf1/siglist.c:31 ../sysdeps/sun4/siglist.c:31 | ||||
| msgid "Trace trap" | ||||
| msgstr "TRAP 硬件錯誤" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:34 ../sysdeps/sun4/siglist.c:34 | ||||
| #: ../sysdeps/osf1/siglist.c:32 ../sysdeps/sun4/siglist.c:32 | ||||
| msgid "Abort" | ||||
| msgstr "不正常中止" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:35 ../sysdeps/sun4/siglist.c:35 | ||||
| #: ../sysdeps/osf1/siglist.c:33 ../sysdeps/sun4/siglist.c:33 | ||||
| msgid "EMT error" | ||||
| msgstr "EMT 硬件錯誤" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:36 ../sysdeps/sun4/siglist.c:36 | ||||
| #: ../sysdeps/osf1/siglist.c:34 ../sysdeps/sun4/siglist.c:34 | ||||
| msgid "Floating-point exception" | ||||
| msgstr "浮點數運算出現例外情況" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:37 ../sysdeps/sun4/siglist.c:37 | ||||
| #: ../sysdeps/osf1/siglist.c:35 ../sysdeps/sun4/siglist.c:35 | ||||
| msgid "Kill" | ||||
| msgstr "強行中止 (Kill)" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:38 ../sysdeps/sun4/siglist.c:38 | ||||
| #: ../sysdeps/osf1/siglist.c:36 ../sysdeps/sun4/siglist.c:36 | ||||
| msgid "Bus error" | ||||
| msgstr "匯流排錯誤" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:39 ../sysdeps/sun4/siglist.c:39 | ||||
| #: ../sysdeps/osf1/siglist.c:37 ../sysdeps/sun4/siglist.c:37 | ||||
| msgid "Segmentation violation" | ||||
| msgstr "記憶體區段錯誤" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:40 ../sysdeps/sun4/siglist.c:40 | ||||
| #: ../sysdeps/osf1/siglist.c:38 ../sysdeps/sun4/siglist.c:38 | ||||
| msgid "Bad argument to system call" | ||||
| msgstr "系統函數參數錯誤" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:41 ../sysdeps/sun4/siglist.c:41 | ||||
| #: ../sysdeps/osf1/siglist.c:39 ../sysdeps/sun4/siglist.c:39 | ||||
| msgid "Broken pipe" | ||||
| msgstr "管線中斷" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:42 ../sysdeps/sun4/siglist.c:42 | ||||
| #: ../sysdeps/osf1/siglist.c:40 ../sysdeps/sun4/siglist.c:40 | ||||
| msgid "Alarm clock" | ||||
| msgstr "系統時鐘訊號" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:43 ../sysdeps/sun4/siglist.c:43 | ||||
| #: ../sysdeps/osf1/siglist.c:41 ../sysdeps/sun4/siglist.c:41 | ||||
| msgid "Termination" | ||||
| msgstr "強行中止 (Term)" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:44 ../sysdeps/sun4/siglist.c:44 | ||||
| #: ../sysdeps/osf1/siglist.c:42 ../sysdeps/sun4/siglist.c:42 | ||||
| msgid "Urgent condition on socket" | ||||
| msgstr "socket 緊急情況" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:45 ../sysdeps/sun4/siglist.c:45 | ||||
| #: ../sysdeps/osf1/siglist.c:43 ../sysdeps/sun4/siglist.c:43 | ||||
| msgid "Stop" | ||||
| msgstr "暫停進程" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:46 ../sysdeps/sun4/siglist.c:46 | ||||
| #: ../sysdeps/osf1/siglist.c:44 ../sysdeps/sun4/siglist.c:44 | ||||
| msgid "Keyboard stop" | ||||
| msgstr "鍵盤停止" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:47 ../sysdeps/sun4/siglist.c:47 | ||||
| #: ../sysdeps/osf1/siglist.c:45 ../sysdeps/sun4/siglist.c:45 | ||||
| msgid "Continue" | ||||
| msgstr "繼續進程" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:48 ../sysdeps/sun4/siglist.c:48 | ||||
| #: ../sysdeps/osf1/siglist.c:46 ../sysdeps/sun4/siglist.c:46 | ||||
| msgid "Child status has changed" | ||||
| msgstr "副進程狀態已改變" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:49 ../sysdeps/sun4/siglist.c:49 | ||||
| #: ../sysdeps/osf1/siglist.c:47 ../sysdeps/sun4/siglist.c:47 | ||||
| msgid "Background read from tty" | ||||
| msgstr "背景進程從 tty 讀入資料" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:50 ../sysdeps/sun4/siglist.c:50 | ||||
| #: ../sysdeps/osf1/siglist.c:48 ../sysdeps/sun4/siglist.c:48 | ||||
| msgid "Background write to tty" | ||||
| msgstr "背景進程向 tty 輸出資料" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:51 ../sysdeps/sun4/siglist.c:51 | ||||
| #: ../sysdeps/osf1/siglist.c:49 ../sysdeps/sun4/siglist.c:49 | ||||
| msgid "I/O now possible" | ||||
| msgstr "可重新進行輸入/輸出" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:52 ../sysdeps/sun4/siglist.c:52 | ||||
| #: ../sysdeps/osf1/siglist.c:50 ../sysdeps/sun4/siglist.c:50 | ||||
| msgid "CPU limit exceeded" | ||||
| msgstr "超過 CPU 限制" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:53 ../sysdeps/sun4/siglist.c:53 | ||||
| #: ../sysdeps/osf1/siglist.c:51 ../sysdeps/sun4/siglist.c:51 | ||||
| msgid "File size limit exceeded" | ||||
| msgstr "超過檔案大小限制" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:54 ../sysdeps/sun4/siglist.c:54 | ||||
| #: ../sysdeps/osf1/siglist.c:52 ../sysdeps/sun4/siglist.c:52 | ||||
| msgid "Virtual alarm clock" | ||||
| msgstr "虛擬時鐘訊號" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:55 ../sysdeps/sun4/siglist.c:55 | ||||
| #: ../sysdeps/osf1/siglist.c:53 ../sysdeps/sun4/siglist.c:53 | ||||
| msgid "Profiling alarm clock" | ||||
| msgstr "效能測試計時器週期結束" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:56 ../sysdeps/sun4/siglist.c:56 | ||||
| #: ../sysdeps/osf1/siglist.c:54 ../sysdeps/sun4/siglist.c:54 | ||||
| msgid "Window size change" | ||||
| msgstr "更改視窗尺寸" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:57 ../sysdeps/sun4/siglist.c:57 | ||||
| #: ../sysdeps/osf1/siglist.c:55 ../sysdeps/sun4/siglist.c:55 | ||||
| msgid "Information request" | ||||
| msgstr "要求進程資訊" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:58 ../sysdeps/sun4/siglist.c:58 | ||||
| #: ../sysdeps/osf1/siglist.c:56 ../sysdeps/sun4/siglist.c:56 | ||||
| msgid "User defined signal 1" | ||||
| msgstr "用戶自定訊號 1" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:59 ../sysdeps/sun4/siglist.c:59 | ||||
| #: ../sysdeps/osf1/siglist.c:57 ../sysdeps/sun4/siglist.c:57 | ||||
| msgid "User defined signal 2" | ||||
| msgstr "用戶自定訊號 2" | ||||
|  | ||||
| #~ msgid "DEBUG" | ||||
| #~ msgstr "偵錯" | ||||
|  | ||||
| #~ msgid "VERBOSE" | ||||
| #~ msgstr "詳細訊息" | ||||
|  | ||||
| #~ msgid "NO-DAEMON" | ||||
| #~ msgstr "NO-DAEMON" | ||||
|  | ||||
| #~ msgid "INETD" | ||||
| #~ msgstr "INETD" | ||||
|   | ||||
							
								
								
									
										113
									
								
								po/zh_TW.po
									
									
									
									
									
								
							
							
						
						
									
										113
									
								
								po/zh_TW.po
									
									
									
									
									
								
							| @@ -4,10 +4,10 @@ | ||||
| #  | ||||
| msgid "" | ||||
| msgstr "" | ||||
| "Project-Id-Version: libgtop 2.9.92\n" | ||||
| "Project-Id-Version: libgtop 2.2.5\n" | ||||
| "Report-Msgid-Bugs-To: \n" | ||||
| "POT-Creation-Date: 2006-06-26 23:04+0800\n" | ||||
| "PO-Revision-Date: 2006-06-26 23:04+0800\n" | ||||
| "POT-Creation-Date: 2008-02-14 20:10+0800\n" | ||||
| "PO-Revision-Date: 2008-02-14 23:04+0800\n" | ||||
| "Last-Translator: Abel Cheung <abel@oaka.org>\n" | ||||
| "Language-Team: Chinese (Taiwan) <community@linuxhall.org>\n" | ||||
| "MIME-Version: 1.0\n" | ||||
| @@ -15,189 +15,182 @@ msgstr "" | ||||
| "Content-Transfer-Encoding: 8bit\n" | ||||
| "Plural-Forms: nplurals=1; plural=0;\n" | ||||
|  | ||||
| #: ../lib/read.c:65 | ||||
| #: ../lib/read.c:51 | ||||
| #, c-format | ||||
| msgid "read %d byte" | ||||
| msgid_plural "read %d bytes" | ||||
| msgstr[0] "讀入 %d 位元組" | ||||
|  | ||||
| #: ../lib/read_data.c:53 | ||||
| #: ../lib/read_data.c:51 | ||||
| msgid "read data size" | ||||
| msgstr "讀入資料大小" | ||||
|  | ||||
| #: ../lib/read_data.c:72 | ||||
| #: ../lib/read_data.c:70 | ||||
| #, c-format | ||||
| msgid "read %lu byte of data" | ||||
| msgid_plural "read %lu bytes of data" | ||||
| msgstr[0] "讀入 %lu 位元組的資料" | ||||
|  | ||||
| #: ../lib/write.c:53 | ||||
| #: ../lib/write.c:51 | ||||
| #, c-format | ||||
| msgid "wrote %d byte" | ||||
| msgid_plural "wrote %d bytes" | ||||
| msgstr[0] "寫入 %d 位元組" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:460 | ||||
| #: ../src/daemon/gnuserv.c:458 | ||||
| msgid "Enable debugging" | ||||
| msgstr "啟用偵錯功能" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:460 | ||||
| msgid "DEBUG" | ||||
| msgstr "偵錯" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:462 | ||||
| msgid "Enable verbose output" | ||||
| msgstr "顯示詳細的輸出訊息" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:462 | ||||
| msgid "VERBOSE" | ||||
| msgstr "詳細訊息" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:464 | ||||
| msgid "Don't fork into background" | ||||
| msgstr "不要放置於背景執行" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:464 | ||||
| msgid "NO-DAEMON" | ||||
| msgstr "NO-DAEMON" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:466 | ||||
| msgid "Invoked from inetd" | ||||
| msgstr "透過 inetd 執行" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:466 | ||||
| msgid "INETD" | ||||
| msgstr "INETD" | ||||
|  | ||||
| #: ../src/daemon/gnuserv.c:500 | ||||
| #: ../src/daemon/gnuserv.c:498 | ||||
| #, c-format | ||||
| msgid "" | ||||
| "Error on option %s: %s.\n" | ||||
| "Run '%s --help' to see a full list of available command line options.\n" | ||||
| msgid "Run '%s --help' to see a full list of available command line options.\n" | ||||
| msgstr "" | ||||
| "選項 %s 發生錯誤:%s。\n" | ||||
| "請執行‘%s --help’查看完整的指令列選項清單。\n" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:29 ../sysdeps/sun4/siglist.c:29 | ||||
| #: ../sysdeps/osf1/siglist.c:27 ../sysdeps/sun4/siglist.c:27 | ||||
| msgid "Hangup" | ||||
| msgstr "掛斷 (Hangup)" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:30 ../sysdeps/sun4/siglist.c:30 | ||||
| #: ../sysdeps/osf1/siglist.c:28 ../sysdeps/sun4/siglist.c:28 | ||||
| msgid "Interrupt" | ||||
| msgstr "中斷 (Interrupt)" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:31 ../sysdeps/sun4/siglist.c:31 | ||||
| #: ../sysdeps/osf1/siglist.c:29 ../sysdeps/sun4/siglist.c:29 | ||||
| msgid "Quit" | ||||
| msgstr "退出 (Quit)" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:32 ../sysdeps/sun4/siglist.c:32 | ||||
| #: ../sysdeps/osf1/siglist.c:30 ../sysdeps/sun4/siglist.c:30 | ||||
| msgid "Illegal instruction" | ||||
| msgstr "不合法硬體指示" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:33 ../sysdeps/sun4/siglist.c:33 | ||||
| #: ../sysdeps/osf1/siglist.c:31 ../sysdeps/sun4/siglist.c:31 | ||||
| msgid "Trace trap" | ||||
| msgstr "TRAP 硬體錯誤" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:34 ../sysdeps/sun4/siglist.c:34 | ||||
| #: ../sysdeps/osf1/siglist.c:32 ../sysdeps/sun4/siglist.c:32 | ||||
| msgid "Abort" | ||||
| msgstr "不正常中止" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:35 ../sysdeps/sun4/siglist.c:35 | ||||
| #: ../sysdeps/osf1/siglist.c:33 ../sysdeps/sun4/siglist.c:33 | ||||
| msgid "EMT error" | ||||
| msgstr "EMT 硬體錯誤" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:36 ../sysdeps/sun4/siglist.c:36 | ||||
| #: ../sysdeps/osf1/siglist.c:34 ../sysdeps/sun4/siglist.c:34 | ||||
| msgid "Floating-point exception" | ||||
| msgstr "浮點數運算出現例外情況" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:37 ../sysdeps/sun4/siglist.c:37 | ||||
| #: ../sysdeps/osf1/siglist.c:35 ../sysdeps/sun4/siglist.c:35 | ||||
| msgid "Kill" | ||||
| msgstr "強行中止 (Kill)" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:38 ../sysdeps/sun4/siglist.c:38 | ||||
| #: ../sysdeps/osf1/siglist.c:36 ../sysdeps/sun4/siglist.c:36 | ||||
| msgid "Bus error" | ||||
| msgstr "匯流排錯誤" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:39 ../sysdeps/sun4/siglist.c:39 | ||||
| #: ../sysdeps/osf1/siglist.c:37 ../sysdeps/sun4/siglist.c:37 | ||||
| msgid "Segmentation violation" | ||||
| msgstr "記憶體區段錯誤" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:40 ../sysdeps/sun4/siglist.c:40 | ||||
| #: ../sysdeps/osf1/siglist.c:38 ../sysdeps/sun4/siglist.c:38 | ||||
| msgid "Bad argument to system call" | ||||
| msgstr "系統函式參數錯誤" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:41 ../sysdeps/sun4/siglist.c:41 | ||||
| #: ../sysdeps/osf1/siglist.c:39 ../sysdeps/sun4/siglist.c:39 | ||||
| msgid "Broken pipe" | ||||
| msgstr "管線中斷" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:42 ../sysdeps/sun4/siglist.c:42 | ||||
| #: ../sysdeps/osf1/siglist.c:40 ../sysdeps/sun4/siglist.c:40 | ||||
| msgid "Alarm clock" | ||||
| msgstr "系統時鐘訊號" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:43 ../sysdeps/sun4/siglist.c:43 | ||||
| #: ../sysdeps/osf1/siglist.c:41 ../sysdeps/sun4/siglist.c:41 | ||||
| msgid "Termination" | ||||
| msgstr "強行中止 (Term)" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:44 ../sysdeps/sun4/siglist.c:44 | ||||
| #: ../sysdeps/osf1/siglist.c:42 ../sysdeps/sun4/siglist.c:42 | ||||
| msgid "Urgent condition on socket" | ||||
| msgstr "socket 緊急情況" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:45 ../sysdeps/sun4/siglist.c:45 | ||||
| #: ../sysdeps/osf1/siglist.c:43 ../sysdeps/sun4/siglist.c:43 | ||||
| msgid "Stop" | ||||
| msgstr "暫停進程" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:46 ../sysdeps/sun4/siglist.c:46 | ||||
| #: ../sysdeps/osf1/siglist.c:44 ../sysdeps/sun4/siglist.c:44 | ||||
| msgid "Keyboard stop" | ||||
| msgstr "鍵盤停止" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:47 ../sysdeps/sun4/siglist.c:47 | ||||
| #: ../sysdeps/osf1/siglist.c:45 ../sysdeps/sun4/siglist.c:45 | ||||
| msgid "Continue" | ||||
| msgstr "繼續進程" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:48 ../sysdeps/sun4/siglist.c:48 | ||||
| #: ../sysdeps/osf1/siglist.c:46 ../sysdeps/sun4/siglist.c:46 | ||||
| msgid "Child status has changed" | ||||
| msgstr "副進程狀態已改變" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:49 ../sysdeps/sun4/siglist.c:49 | ||||
| #: ../sysdeps/osf1/siglist.c:47 ../sysdeps/sun4/siglist.c:47 | ||||
| msgid "Background read from tty" | ||||
| msgstr "背景進程從 tty 讀入資料" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:50 ../sysdeps/sun4/siglist.c:50 | ||||
| #: ../sysdeps/osf1/siglist.c:48 ../sysdeps/sun4/siglist.c:48 | ||||
| msgid "Background write to tty" | ||||
| msgstr "背景進程向 tty 輸出資料" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:51 ../sysdeps/sun4/siglist.c:51 | ||||
| #: ../sysdeps/osf1/siglist.c:49 ../sysdeps/sun4/siglist.c:49 | ||||
| msgid "I/O now possible" | ||||
| msgstr "可重新進行輸入/輸出" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:52 ../sysdeps/sun4/siglist.c:52 | ||||
| #: ../sysdeps/osf1/siglist.c:50 ../sysdeps/sun4/siglist.c:50 | ||||
| msgid "CPU limit exceeded" | ||||
| msgstr "超過 CPU 限制" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:53 ../sysdeps/sun4/siglist.c:53 | ||||
| #: ../sysdeps/osf1/siglist.c:51 ../sysdeps/sun4/siglist.c:51 | ||||
| msgid "File size limit exceeded" | ||||
| msgstr "超過檔案大小限制" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:54 ../sysdeps/sun4/siglist.c:54 | ||||
| #: ../sysdeps/osf1/siglist.c:52 ../sysdeps/sun4/siglist.c:52 | ||||
| msgid "Virtual alarm clock" | ||||
| msgstr "虛擬時鐘訊號" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:55 ../sysdeps/sun4/siglist.c:55 | ||||
| #: ../sysdeps/osf1/siglist.c:53 ../sysdeps/sun4/siglist.c:53 | ||||
| msgid "Profiling alarm clock" | ||||
| msgstr "效能測試計時器週期結束" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:56 ../sysdeps/sun4/siglist.c:56 | ||||
| #: ../sysdeps/osf1/siglist.c:54 ../sysdeps/sun4/siglist.c:54 | ||||
| msgid "Window size change" | ||||
| msgstr "更改視窗尺寸" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:57 ../sysdeps/sun4/siglist.c:57 | ||||
| #: ../sysdeps/osf1/siglist.c:55 ../sysdeps/sun4/siglist.c:55 | ||||
| msgid "Information request" | ||||
| msgstr "要求進程資訊" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:58 ../sysdeps/sun4/siglist.c:58 | ||||
| #: ../sysdeps/osf1/siglist.c:56 ../sysdeps/sun4/siglist.c:56 | ||||
| msgid "User defined signal 1" | ||||
| msgstr "用戶自定訊號 1" | ||||
|  | ||||
| #: ../sysdeps/osf1/siglist.c:59 ../sysdeps/sun4/siglist.c:59 | ||||
| #: ../sysdeps/osf1/siglist.c:57 ../sysdeps/sun4/siglist.c:57 | ||||
| msgid "User defined signal 2" | ||||
| msgstr "用戶自定訊號 2" | ||||
|  | ||||
| #~ msgid "DEBUG" | ||||
| #~ msgstr "偵錯" | ||||
|  | ||||
| #~ msgid "VERBOSE" | ||||
| #~ msgstr "詳細訊息" | ||||
|  | ||||
| #~ msgid "NO-DAEMON" | ||||
| #~ msgstr "NO-DAEMON" | ||||
|  | ||||
| #~ msgid "INETD" | ||||
| #~ msgstr "INETD" | ||||
|   | ||||
| @@ -2,4 +2,4 @@ | ||||
| SUBDIRS			= common @sysdeps_dir@ | ||||
|  | ||||
| DIST_SUBDIRS		= bsd common linux osf1 \ | ||||
| 			  stub stub_suid sun4 freebsd solaris aix | ||||
| 			  stub stub_suid sun4 freebsd solaris aix darwin | ||||
|   | ||||
| @@ -4,11 +4,18 @@ INCLUDES			= @INCLUDES@ | ||||
| noinst_LTLIBRARIES		= libgtop_common-2.0.la libgtop_suid_common-2.0.la | ||||
|  | ||||
| libgtop_common_2_0_la_SOURCES	= error.c gnuslib.c \ | ||||
| 				  fsusage.c \ | ||||
|                                   mountlist.c \ | ||||
|                                   procargs.c \ | ||||
| 				  default.c | ||||
|  | ||||
| if !LIBGTOP_SYSDEPS_PRIVATE_MOUNTLIST | ||||
| 	libgtop_common_2_0_la_SOURCES += mountlist.c | ||||
| endif | ||||
|  | ||||
| if !LIBGTOP_SYSDEPS_PRIVATE_FSUSAGE | ||||
| 	libgtop_common_2_0_la_SOURCES += fsusage.c | ||||
| endif | ||||
|  | ||||
|  | ||||
| # libgtop_common_2_0_la_LDFLAGS	= $(LT_VERSION_INFO) | ||||
| libgtop_common_2_0_la_LIBADD	= $(LIBGTOP_EXTRA_LIBS) | ||||
|  | ||||
|   | ||||
| @@ -554,6 +554,7 @@ static gboolean ignore_mount_entry(const struct mount_entry *me) | ||||
| 		"openpromfs", | ||||
| 		"proc", | ||||
| 		"procfs", | ||||
| 		"rpc_pipefs", | ||||
| 		"securityfs", | ||||
| 		"supermount", | ||||
| 		"sysfs", | ||||
|   | ||||
							
								
								
									
										16
									
								
								sysdeps/darwin/Makefile.am
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								sysdeps/darwin/Makefile.am
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,16 @@ | ||||
| INCLUDES			= @INCLUDES@ @LIBGTOP_INCS@ | ||||
|  | ||||
| noinst_LTLIBRARIES			= libgtop_sysdeps-2.0.la libgtop_sysdeps_suid-2.0.la | ||||
|  | ||||
| libgtop_sysdeps_2_0_la_SOURCES	= nosuid.c siglist.c sysinfo.c | ||||
|  | ||||
| libgtop_sysdeps_suid_2_0_la_SOURCES = open.c close.c \ | ||||
| cpu.c mem.c swap.c uptime.c loadavg.c shm_limits.c msg_limits.c \ | ||||
| sem_limits.c proclist.c procstate.c procuid.c proctime.c \ | ||||
| procmem.c procsignal.c prockernel.c procsegment.c procargs.c \ | ||||
| procmap.c netload.c ppp.c netlist.c procopenfiles.c procwd.c | ||||
|  | ||||
| libgtopinclude_HEADERS		= glibtop_server.h glibtop_machine.h | ||||
| libgtopincludedir		= $(includedir)/libgtop-2.0 | ||||
|  | ||||
| noinst_HEADERS			= glibtop_suid.h | ||||
							
								
								
									
										27
									
								
								sysdeps/darwin/close.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								sysdeps/darwin/close.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,27 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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/close.h> | ||||
|  | ||||
| /* Closes pipe to gtop server. */ | ||||
|  | ||||
| void | ||||
| glibtop_close_p (glibtop *server) | ||||
| { } | ||||
							
								
								
									
										26
									
								
								sysdeps/darwin/close_suid.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								sysdeps/darwin/close_suid.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,26 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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/close.h> | ||||
|  | ||||
| /* Closes pipe to gtop server. */ | ||||
|  | ||||
| void | ||||
| glibtop_close_p (glibtop *server) | ||||
| { } | ||||
							
								
								
									
										91
									
								
								sysdeps/darwin/cpu.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										91
									
								
								sysdeps/darwin/cpu.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,91 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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 <unistd.h> | ||||
|  | ||||
| #include <glibtop.h> | ||||
| #include <glibtop/error.h> | ||||
| #include <glibtop/cpu.h> | ||||
|  | ||||
| #include <glibtop_suid.h> | ||||
|  | ||||
| #include <mach/mach_init.h> | ||||
| #include <mach/mach_host.h> | ||||
| #include <mach/vm_map.h> | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_cpu = | ||||
| (1L << GLIBTOP_CPU_TOTAL)  + (1L << GLIBTOP_CPU_USER) + | ||||
| (1L << GLIBTOP_CPU_NICE)   + (1L << GLIBTOP_CPU_SYS) + | ||||
| (1L << GLIBTOP_CPU_IDLE)   + (1L << GLIBTOP_CPU_FREQUENCY) + | ||||
| (1L << GLIBTOP_XCPU_TOTAL) + (1L << GLIBTOP_XCPU_USER) + | ||||
| (1L << GLIBTOP_XCPU_NICE)  + (1L << GLIBTOP_XCPU_SYS) + | ||||
| (1L << GLIBTOP_XCPU_IDLE); | ||||
|  | ||||
| /* Init function. */ | ||||
|  | ||||
| void | ||||
| _glibtop_init_cpu_p (glibtop *server) | ||||
| { | ||||
| 	server->sysdeps.cpu = _glibtop_sysdeps_cpu; | ||||
| } | ||||
|  | ||||
| /* Provides information about cpu usage. */ | ||||
|  | ||||
| void | ||||
| glibtop_get_cpu_p (glibtop *server, glibtop_cpu *buf) | ||||
| { | ||||
| 	processor_cpu_load_info_data_t *pinfo; | ||||
| 	mach_msg_type_number_t info_count; | ||||
| 	natural_t processor_count; | ||||
| 	int i; | ||||
|  | ||||
| 	glibtop_init_p (server, (1 << GLIBTOP_SYSDEPS_CPU), 0); | ||||
|  | ||||
| 	memset (buf, 0, sizeof (glibtop_cpu)); | ||||
|  | ||||
| 	if (host_processor_info (mach_host_self (), | ||||
| 				 PROCESSOR_CPU_LOAD_INFO, | ||||
| 				 &processor_count, | ||||
| 				 (processor_info_array_t*)&pinfo, | ||||
| 				 &info_count)) { | ||||
| 		glibtop_warn_io_r (server, "host_processor_info (cpu)"); | ||||
| 		return; | ||||
| 	} | ||||
|  | ||||
| 	for (i = 0; i < server->ncpu; i++) { | ||||
| 		buf->xcpu_user [i] = pinfo[i].cpu_ticks [CPU_STATE_USER]; | ||||
| 		buf->xcpu_sys  [i] = pinfo[i].cpu_ticks [CPU_STATE_SYSTEM]; | ||||
| 		buf->xcpu_idle [i] = pinfo[i].cpu_ticks [CPU_STATE_IDLE]; | ||||
| 		buf->xcpu_nice [i] = pinfo[i].cpu_ticks [CPU_STATE_NICE]; | ||||
| 		buf->xcpu_total[i] = buf->xcpu_user [i] + buf->xcpu_sys  [i] + | ||||
| 				     buf->xcpu_idle [i] + buf->xcpu_nice [i]; | ||||
|  | ||||
| 		buf->user  += buf->xcpu_user [i]; | ||||
| 		buf->sys   += buf->xcpu_sys  [i]; | ||||
| 		buf->idle  += buf->xcpu_idle [i]; | ||||
| 		buf->nice  += buf->xcpu_nice [i]; | ||||
| 		buf->total += buf->xcpu_total[i]; | ||||
| 	} | ||||
| 	vm_deallocate (mach_task_self (), (vm_address_t) pinfo, info_count); | ||||
|  | ||||
| 	buf->frequency = 100; | ||||
| 	buf->flags = _glibtop_sysdeps_cpu; | ||||
| } | ||||
|  | ||||
							
								
								
									
										35
									
								
								sysdeps/darwin/glibtop_machine.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								sysdeps/darwin/glibtop_machine.h
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,35 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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_MACHINE_H__ | ||||
| #define __GLIBTOP_MACHINE_H__ | ||||
|  | ||||
| G_BEGIN_DECLS | ||||
|  | ||||
| typedef struct _glibtop_machine		glibtop_machine; | ||||
|  | ||||
| struct _glibtop_machine | ||||
| { | ||||
| 	uid_t uid, euid;		/* Real and effective user id */ | ||||
| 	gid_t gid, egid;		/* Real and effective group id */ | ||||
| }; | ||||
|  | ||||
| G_END_DECLS | ||||
|  | ||||
| #endif | ||||
							
								
								
									
										50
									
								
								sysdeps/darwin/glibtop_server.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										50
									
								
								sysdeps/darwin/glibtop_server.h
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,50 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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__ | ||||
|  | ||||
| G_BEGIN_DECLS | ||||
|  | ||||
| #define GLIBTOP_SUID_CPU		(1 << GLIBTOP_SYSDEPS_CPU) | ||||
| #define GLIBTOP_SUID_MEM		(1 << GLIBTOP_SYSDEPS_MEM) | ||||
| #define GLIBTOP_SUID_SWAP		(1 << GLIBTOP_SYSDEPS_SWAP) | ||||
| #define GLIBTOP_SUID_UPTIME		(1 << GLIBTOP_SYSDEPS_UPTIME) | ||||
| #define GLIBTOP_SUID_LOADAVG		(1 << GLIBTOP_SYSDEPS_LOADAVG) | ||||
| #define GLIBTOP_SUID_SHM_LIMITS		(1 << GLIBTOP_SYSDEPS_SHM_LIMITS) | ||||
| #define GLIBTOP_SUID_MSG_LIMITS		(1 << GLIBTOP_SYSDEPS_MSG_LIMITS) | ||||
| #define GLIBTOP_SUID_SEM_LIMITS		(1 << GLIBTOP_SYSDEPS_SEM_LIMITS) | ||||
| #define GLIBTOP_SUID_PROCLIST		(1 << GLIBTOP_SYSDEPS_PROCLIST) | ||||
| #define GLIBTOP_SUID_PROC_STATE		(1 << GLIBTOP_SYSDEPS_PROC_STATE) | ||||
| #define GLIBTOP_SUID_PROC_UID		(1 << GLIBTOP_SYSDEPS_PROC_UID) | ||||
| #define GLIBTOP_SUID_PROC_MEM		(1 << GLIBTOP_SYSDEPS_PROC_MEM) | ||||
| #define GLIBTOP_SUID_PROC_TIME		(1 << GLIBTOP_SYSDEPS_PROC_TIME) | ||||
| #define GLIBTOP_SUID_PROC_SIGNAL	(1 << GLIBTOP_SYSDEPS_PROC_SIGNAL) | ||||
| #define GLIBTOP_SUID_PROC_KERNEL	(1 << GLIBTOP_SYSDEPS_PROC_KERNEL) | ||||
| #define GLIBTOP_SUID_PROC_SEGMENT	(1 << GLIBTOP_SYSDEPS_PROC_SEGMENT) | ||||
| #define GLIBTOP_SUID_PROC_ARGS		(1 << GLIBTOP_SYSDEPS_PROC_ARGS) | ||||
| #define GLIBTOP_SUID_PROC_MAP		(1 << GLIBTOP_SYSDEPS_PROC_MAP) | ||||
| #define GLIBTOP_SUID_NETLOAD		(1 << GLIBTOP_SYSDEPS_NETLOAD) | ||||
| #define GLIBTOP_SUID_NETLIST		0 | ||||
| #define GLIBTOP_SUID_PPP		(1 << GLIBTOP_SYSDEPS_PPP) | ||||
| #define GLIBTOP_SUID_PROC_WD		(1 << GLIBTOP_SYSDEPS_PROC_WD) | ||||
|  | ||||
| G_END_DECLS | ||||
|  | ||||
| #endif | ||||
							
								
								
									
										44
									
								
								sysdeps/darwin/glibtop_suid.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										44
									
								
								sysdeps/darwin/glibtop_suid.h
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,44 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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_SUID_H__ | ||||
| #define __GLIBTOP_SUID_H__ | ||||
|  | ||||
| G_BEGIN_DECLS | ||||
|  | ||||
| static inline void glibtop_suid_enter (glibtop *server) { | ||||
| 	setreuid (server->machine.uid, server->machine.euid); | ||||
| }; | ||||
|  | ||||
| static inline void glibtop_suid_leave (glibtop *server) { | ||||
| 	if (setreuid (server->machine.euid, server->machine.uid)) | ||||
| 		_exit (1); | ||||
| }; | ||||
|  | ||||
| void | ||||
| glibtop_init_p (glibtop *server, const unsigned long features, | ||||
| 		const unsigned flags); | ||||
| void | ||||
| glibtop_open_p (glibtop *server, const char *program_name, | ||||
| 		const unsigned long features, | ||||
| 		const unsigned flags); | ||||
|  | ||||
| G_END_DECLS | ||||
|  | ||||
| #endif | ||||
							
								
								
									
										65
									
								
								sysdeps/darwin/loadavg.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										65
									
								
								sysdeps/darwin/loadavg.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,65 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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 <unistd.h> | ||||
|  | ||||
| #include <glibtop.h> | ||||
| #include <glibtop/error.h> | ||||
| #include <glibtop/loadavg.h> | ||||
|  | ||||
| #include <glibtop_suid.h> | ||||
|  | ||||
| #include <stdlib.h> | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_loadavg = | ||||
| (1L << GLIBTOP_LOADAVG_LOADAVG); | ||||
|  | ||||
| /* Init function. */ | ||||
|  | ||||
| void | ||||
| _glibtop_init_loadavg_p (glibtop *server) | ||||
| { | ||||
| 	server->sysdeps.loadavg = _glibtop_sysdeps_loadavg; | ||||
| } | ||||
|  | ||||
| /* Provides load averange. */ | ||||
|  | ||||
| void | ||||
| glibtop_get_loadavg_p (glibtop *server, glibtop_loadavg *buf) | ||||
| { | ||||
| 	double ldavg[3]; | ||||
| 	int i; | ||||
|  | ||||
| 	glibtop_init_p (server, (1 << GLIBTOP_SYSDEPS_LOADAVG), 0); | ||||
|  | ||||
| 	memset (buf, 0, sizeof (glibtop_loadavg)); | ||||
|  | ||||
| 	if (getloadavg (ldavg, 3) != 3) { | ||||
| 		glibtop_warn_io_r (server, "getloadavg"); | ||||
| 		return; | ||||
| 	} | ||||
|  | ||||
| 	/* fill in the struct */ | ||||
| 	buf->flags = _glibtop_sysdeps_loadavg; | ||||
| 	for (i = 0; i < 3; i++) { | ||||
| 		buf->loadavg [i] = ldavg [i]; | ||||
| 	} | ||||
| } | ||||
|  | ||||
							
								
								
									
										70
									
								
								sysdeps/darwin/mem.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										70
									
								
								sysdeps/darwin/mem.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,70 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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 <unistd.h> | ||||
|  | ||||
| #include <glibtop.h> | ||||
| #include <glibtop/error.h> | ||||
| #include <glibtop/mem.h> | ||||
|  | ||||
| #include <glibtop_suid.h> | ||||
|  | ||||
| #include <mach/mach_init.h> | ||||
| #include <mach/mach_host.h> | ||||
| #include <mach/host_info.h> | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_mem = | ||||
| (1L << GLIBTOP_MEM_TOTAL) + (1L << GLIBTOP_MEM_USED) + | ||||
| (1L << GLIBTOP_MEM_FREE); | ||||
|  | ||||
| /* Init function. */ | ||||
|  | ||||
| void | ||||
| _glibtop_init_mem_p (glibtop *server) | ||||
| { | ||||
| 	server->sysdeps.mem = _glibtop_sysdeps_mem; | ||||
| } | ||||
|  | ||||
| /* Provides information about memory usage. */ | ||||
|  | ||||
| void | ||||
| glibtop_get_mem_p (glibtop *server, glibtop_mem *buf) | ||||
| { | ||||
| 	vm_statistics_data_t vm_info; | ||||
| 	mach_msg_type_number_t info_count; | ||||
|  | ||||
| 	glibtop_init_p (server, (1 << GLIBTOP_SYSDEPS_MEM), 0); | ||||
|  | ||||
| 	memset (buf, 0, sizeof (glibtop_mem)); | ||||
|  | ||||
| 	info_count = HOST_VM_INFO_COUNT; | ||||
| 	if (host_statistics (mach_host_self (), HOST_VM_INFO, | ||||
| 			     (host_info_t)&vm_info, &info_count)) { | ||||
| 		glibtop_warn_io_r (server, "host_statistics (vm_statistics)"); | ||||
| 		return; | ||||
| 	} | ||||
|  | ||||
| 	buf->total = (vm_info.active_count + vm_info.inactive_count + | ||||
| 		      vm_info.free_count + vm_info.wire_count) * vm_page_size; | ||||
| 	buf->free = vm_info.free_count   * vm_page_size; | ||||
| 	buf->used = buf->total - buf->free; | ||||
| 	buf->flags = _glibtop_sysdeps_mem; | ||||
| } | ||||
|  | ||||
							
								
								
									
										47
									
								
								sysdeps/darwin/msg_limits.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										47
									
								
								sysdeps/darwin/msg_limits.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,47 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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 <unistd.h> | ||||
|  | ||||
| #include <glibtop.h> | ||||
| #include <glibtop/error.h> | ||||
| #include <glibtop/msg_limits.h> | ||||
|  | ||||
| #include <glibtop_suid.h> | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_msg_limits = 0; | ||||
|  | ||||
| /* Init function. */ | ||||
|  | ||||
| void | ||||
| _glibtop_init_msg_limits_p (glibtop *server) | ||||
| { | ||||
| 	server->sysdeps.msg_limits = _glibtop_sysdeps_msg_limits; | ||||
| } | ||||
|  | ||||
| /* Provides information about sysv ipc limits. */ | ||||
|  | ||||
| void | ||||
| glibtop_get_msg_limits_p (glibtop *server, glibtop_msg_limits *buf) | ||||
| { | ||||
| 	glibtop_init_p (server, (1 << GLIBTOP_SYSDEPS_MSG_LIMITS), 0); | ||||
|  | ||||
| 	memset (buf, 0, sizeof (glibtop_msg_limits)); | ||||
| } | ||||
							
								
								
									
										66
									
								
								sysdeps/darwin/netlist.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										66
									
								
								sysdeps/darwin/netlist.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,66 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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/netlist.h> | ||||
| #include <glibtop/error.h> | ||||
|  | ||||
| #include <net/if.h> | ||||
|  | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_netlist = (1 << GLIBTOP_NETLIST_NUMBER); | ||||
|  | ||||
| /* Init function. */ | ||||
|  | ||||
| void | ||||
| _glibtop_init_netlist_s (glibtop *server) | ||||
| { | ||||
| 	server->sysdeps.netlist = _glibtop_sysdeps_netlist; | ||||
| } | ||||
|  | ||||
|  | ||||
| char** | ||||
| glibtop_get_netlist_s (glibtop *server, glibtop_netlist *buf) | ||||
| { | ||||
| 	struct if_nameindex *ifstart, *ifs; | ||||
| 	GPtrArray *devices; | ||||
|  | ||||
| 	glibtop_init_s (&server, GLIBTOP_SYSDEPS_NETLIST, 0); | ||||
|  | ||||
| 	memset (buf, 0, sizeof (glibtop_netlist)); | ||||
|  | ||||
| 	ifs = ifstart = if_nameindex(); | ||||
|  | ||||
| 	devices = g_ptr_array_new(); | ||||
|  | ||||
| 	while(ifs && ifs->if_name) { | ||||
| 		g_ptr_array_add(devices, g_strdup(ifs->if_name)); | ||||
| 		buf->number++; | ||||
| 		ifs++; | ||||
| 	} | ||||
|  | ||||
| 	if_freenameindex(ifstart); | ||||
|  | ||||
| 	buf->flags = _glibtop_sysdeps_netlist; | ||||
|  | ||||
| 	g_ptr_array_add(devices, NULL); | ||||
|  | ||||
| 	return (char **) g_ptr_array_free(devices, FALSE); | ||||
| } | ||||
|  | ||||
							
								
								
									
										165
									
								
								sysdeps/darwin/netload.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										165
									
								
								sysdeps/darwin/netload.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,165 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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 <unistd.h> | ||||
|  | ||||
| #include <glibtop.h> | ||||
| #include <glibtop/error.h> | ||||
| #include <glibtop/netload.h> | ||||
|  | ||||
| #include <glibtop_suid.h> | ||||
|  | ||||
| #include <sys/types.h> | ||||
| #include <sys/sysctl.h> | ||||
| #include <sys/socket.h> | ||||
| #include <net/if.h> | ||||
| #include <net/if_dl.h> | ||||
| #include <net/route.h> | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_netload = | ||||
| (1L << GLIBTOP_NETLOAD_IF_FLAGS) + | ||||
| (1L << GLIBTOP_NETLOAD_MTU) + | ||||
| /* (1L << GLIBTOP_NETLOAD_SUBNET) + */ | ||||
| /* (1L << GLIBTOP_NETLOAD_ADDRESS) + */ | ||||
| (1L << GLIBTOP_NETLOAD_PACKETS_IN) + | ||||
| (1L << GLIBTOP_NETLOAD_PACKETS_OUT) + | ||||
| (1L << GLIBTOP_NETLOAD_PACKETS_TOTAL) + | ||||
| (1L << GLIBTOP_NETLOAD_BYTES_IN) + | ||||
| (1L << GLIBTOP_NETLOAD_BYTES_OUT) + | ||||
| (1L << GLIBTOP_NETLOAD_BYTES_TOTAL) + | ||||
| (1L << GLIBTOP_NETLOAD_ERRORS_IN) + | ||||
| (1L << GLIBTOP_NETLOAD_ERRORS_OUT) + | ||||
| (1L << GLIBTOP_NETLOAD_ERRORS_TOTAL) + | ||||
| (1L << GLIBTOP_NETLOAD_COLLISIONS); | ||||
|  | ||||
| /* Init function. */ | ||||
|  | ||||
| void | ||||
| _glibtop_init_netload_p (glibtop *server) | ||||
| { | ||||
| 	server->sysdeps.netload = _glibtop_sysdeps_netload; | ||||
| } | ||||
|  | ||||
| /* Provides Network statistics. */ | ||||
|  | ||||
| void | ||||
| glibtop_get_netload_p (glibtop *server, glibtop_netload *buf, | ||||
| 		       const char *interface) | ||||
| { | ||||
| 	int mib[] = { CTL_NET, PF_ROUTE, 0, 0, NET_RT_IFLIST, 0 }; | ||||
| 	size_t bufsize; | ||||
| 	char *rtbuf, *ptr, *eob; | ||||
| 	struct if_msghdr *ifm; | ||||
|  | ||||
| 	glibtop_init_p (server, (1 << GLIBTOP_SYSDEPS_NETLOAD), 0); | ||||
|  | ||||
| 	memset (buf, 0, sizeof (glibtop_netload)); | ||||
|  | ||||
| 	if (sysctl (mib, 6, NULL, &bufsize, NULL, 0) < 0) | ||||
| 		return; | ||||
|  | ||||
| 	rtbuf = (char*)g_malloc (bufsize); | ||||
| 	if (rtbuf == NULL) | ||||
| 		return; | ||||
|  | ||||
| 	if (sysctl (mib, 6, rtbuf, &bufsize, NULL, 0) < 0) { | ||||
| 		g_free (rtbuf); | ||||
| 		return; | ||||
| 	} | ||||
|  | ||||
| 	eob = rtbuf + bufsize; | ||||
| 	ptr = rtbuf; | ||||
| 	while (ptr < eob) { | ||||
| 		struct sockaddr_dl *sdl; | ||||
|  | ||||
| 		ifm = (struct if_msghdr*) ptr; | ||||
|  | ||||
| 		if (ifm->ifm_type != RTM_IFINFO) | ||||
| 			break; | ||||
| 		ptr += ifm->ifm_msglen; | ||||
|  | ||||
| 		while (ptr < eob) { | ||||
| 			struct if_msghdr *nextifm = (struct if_msghdr*) ptr; | ||||
|  | ||||
| 			if (nextifm->ifm_type != RTM_NEWADDR) | ||||
| 				break; | ||||
| 			ptr += nextifm->ifm_msglen; | ||||
| 		} | ||||
|  | ||||
| 		sdl = (struct sockaddr_dl*) (ifm + 1); | ||||
| 		if (sdl->sdl_family != AF_LINK) | ||||
| 			continue; | ||||
| 		if (strlen (interface) != sdl->sdl_nlen) | ||||
| 			continue; | ||||
| 		if (strcmp (interface, sdl->sdl_data) == 0) | ||||
| 			goto FOUND; | ||||
| 	} | ||||
| 	g_free (rtbuf); | ||||
| 	return; | ||||
|  | ||||
| FOUND: | ||||
| 	if (ifm->ifm_flags & IFF_UP) | ||||
| 		buf->if_flags |= GLIBTOP_IF_FLAGS_UP; | ||||
| 	if (ifm->ifm_flags & IFF_BROADCAST) | ||||
| 		buf->if_flags |= GLIBTOP_IF_FLAGS_BROADCAST; | ||||
| 	if (ifm->ifm_flags & IFF_DEBUG) | ||||
| 		buf->if_flags |= GLIBTOP_IF_FLAGS_DEBUG; | ||||
| 	if (ifm->ifm_flags & IFF_LOOPBACK) | ||||
| 		buf->if_flags |= GLIBTOP_IF_FLAGS_LOOPBACK; | ||||
| 	if (ifm->ifm_flags & IFF_POINTOPOINT) | ||||
| 		buf->if_flags |= GLIBTOP_IF_FLAGS_POINTOPOINT; | ||||
| 	if (ifm->ifm_flags & IFF_RUNNING) | ||||
| 		buf->if_flags |= GLIBTOP_IF_FLAGS_RUNNING; | ||||
| 	if (ifm->ifm_flags & IFF_NOARP) | ||||
| 		buf->if_flags |= GLIBTOP_IF_FLAGS_NOARP; | ||||
| 	if (ifm->ifm_flags & IFF_NOARP) | ||||
| 		buf->if_flags |= GLIBTOP_IF_FLAGS_PROMISC; | ||||
| 	if (ifm->ifm_flags & IFF_ALLMULTI) | ||||
| 		buf->if_flags |= GLIBTOP_IF_FLAGS_ALLMULTI; | ||||
| 	if (ifm->ifm_flags & IFF_OACTIVE) | ||||
| 		buf->if_flags |= GLIBTOP_IF_FLAGS_OACTIVE; | ||||
| 	if (ifm->ifm_flags & IFF_SIMPLEX) | ||||
| 		buf->if_flags |= GLIBTOP_IF_FLAGS_SIMPLEX; | ||||
| 	if (ifm->ifm_flags & IFF_LINK0) | ||||
| 		buf->if_flags |= GLIBTOP_IF_FLAGS_LINK0; | ||||
| 	if (ifm->ifm_flags & IFF_LINK1) | ||||
| 		buf->if_flags |= GLIBTOP_IF_FLAGS_LINK1; | ||||
| 	if (ifm->ifm_flags & IFF_LINK2) | ||||
| 		buf->if_flags |= GLIBTOP_IF_FLAGS_LINK2; | ||||
| 	if (ifm->ifm_flags & IFF_ALTPHYS) | ||||
| 		buf->if_flags |= GLIBTOP_IF_FLAGS_ALTPHYS; | ||||
| 	if (ifm->ifm_flags & IFF_MULTICAST) | ||||
| 		buf->if_flags |= GLIBTOP_IF_FLAGS_MULTICAST; | ||||
| 	buf->mtu		= ifm->ifm_data.ifi_mtu; | ||||
| 	buf->subnet		= 0; /* FIXME */ | ||||
| 	buf->address		= 0; /* FIXME */ | ||||
| 	buf->packets_in		= ifm->ifm_data.ifi_ipackets; | ||||
| 	buf->packets_out	= ifm->ifm_data.ifi_opackets; | ||||
| 	buf->packets_total	= buf->packets_in + buf->packets_out; | ||||
| 	buf->bytes_in		= ifm->ifm_data.ifi_ibytes; | ||||
| 	buf->bytes_out		= ifm->ifm_data.ifi_obytes; | ||||
| 	buf->bytes_total	= buf->bytes_in + buf->bytes_out; | ||||
| 	buf->errors_in		= ifm->ifm_data.ifi_ierrors; | ||||
| 	buf->errors_out		= ifm->ifm_data.ifi_oerrors; | ||||
| 	buf->errors_total	= buf->errors_in + buf->errors_out; | ||||
| 	buf->collisions		= ifm->ifm_data.ifi_collisions; | ||||
| 	buf->flags		= _glibtop_sysdeps_netload; | ||||
| 	g_free (buf); | ||||
| } | ||||
							
								
								
									
										55
									
								
								sysdeps/darwin/nosuid.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										55
									
								
								sysdeps/darwin/nosuid.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,55 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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 <unistd.h> | ||||
|  | ||||
| #include <glibtop.h> | ||||
| #include <glibtop/cpu.h> | ||||
| #include <glibtop/open.h> | ||||
|  | ||||
| #include <mach/mach_host.h> | ||||
| #include <mach/mach_init.h> | ||||
| #include <mach/mach_interface.h> | ||||
|  | ||||
| #include <glibtop/error.h> | ||||
|  | ||||
| void | ||||
| glibtop_open_s (glibtop *server, const char *program_name, | ||||
| 		const unsigned long features, const unsigned flags) | ||||
| { | ||||
| 	processor_cpu_load_info_data_t *pinfo; | ||||
| 	mach_msg_type_number_t info_count;    | ||||
| 	natural_t processor_count; | ||||
|  | ||||
| 	if (host_processor_info (mach_host_self (), | ||||
| 		PROCESSOR_CPU_LOAD_INFO, | ||||
| 		&processor_count, | ||||
| 		(processor_info_array_t*)&pinfo, | ||||
| 		&info_count)) { | ||||
| 		glibtop_error_io_r (server, "host_processor_info"); | ||||
| 	} | ||||
| 	server->ncpu = (processor_count <= GLIBTOP_NCPU) ? | ||||
| 		processor_count : GLIBTOP_NCPU; | ||||
| 	vm_deallocate (mach_task_self (), (vm_address_t) pinfo, info_count); | ||||
| } | ||||
|  | ||||
| void | ||||
| glibtop_close_s (glibtop *server) | ||||
| { } | ||||
							
								
								
									
										98
									
								
								sysdeps/darwin/open.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										98
									
								
								sysdeps/darwin/open.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,98 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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/cpu.h> | ||||
| #include <glibtop/open.h> | ||||
|  | ||||
| #include <mach/mach_host.h> | ||||
| #include <mach/mach_init.h> | ||||
| #include <mach/mach_interface.h> | ||||
|  | ||||
| #include <glibtop/init_hooks.h> | ||||
| #include <glibtop/error.h> | ||||
|  | ||||
| #include <unistd.h> | ||||
|  | ||||
| /* !!! THIS FUNCTION RUNS SUID ROOT - CHANGE WITH CAUTION !!! */ | ||||
|  | ||||
| void | ||||
| glibtop_init_p (glibtop *server, const unsigned long features, | ||||
| 		const unsigned flags) | ||||
| { | ||||
| 	const _glibtop_init_func_t *init_fkt; | ||||
|  | ||||
| 	if (server == NULL) | ||||
| 		glibtop_error_r (NULL, "glibtop_init_p (server == NULL)"); | ||||
|  | ||||
| 	/* Do the initialization, but only if not already initialized. */ | ||||
|  | ||||
| 	if ((server->flags & _GLIBTOP_INIT_STATE_INIT) == 0) { | ||||
| 		glibtop_open_p (server, "glibtop", features, flags); | ||||
|  | ||||
| 		for (init_fkt = _glibtop_init_hook_p; *init_fkt; init_fkt++) | ||||
| 			(*init_fkt) (server); | ||||
|  | ||||
| 		server->flags |= _GLIBTOP_INIT_STATE_INIT; | ||||
| 	} | ||||
| } | ||||
|  | ||||
| void | ||||
| glibtop_open_p (glibtop *server, const char *program_name, | ||||
| 		const unsigned long features, const unsigned flags) | ||||
| { | ||||
|         processor_cpu_load_info_data_t *pinfo; | ||||
|         mach_msg_type_number_t info_count; | ||||
|         natural_t processor_count; | ||||
|  | ||||
| 	/* !!! WE ARE ROOT HERE - CHANGE WITH CAUTION !!! */ | ||||
|  | ||||
| 	server->name = program_name; | ||||
|  | ||||
| 	server->machine.uid = getuid (); | ||||
| 	server->machine.euid = geteuid (); | ||||
| 	server->machine.gid = getgid (); | ||||
| 	server->machine.egid = getegid (); | ||||
|  | ||||
| 	/* Drop priviledges. */	 | ||||
|  | ||||
| 	if (setreuid (server->machine.euid, server->machine.uid)) | ||||
| 		_exit (1); | ||||
|  | ||||
| 	if (setregid (server->machine.egid, server->machine.gid)) | ||||
| 		_exit (1); | ||||
| 	 | ||||
| 	/* !!! END OF SUID ROOT PART !!! */ | ||||
|  | ||||
| 	/* Our effective uid is now those of the user invoking the server, | ||||
| 	 * so we do no longer have any priviledges. */ | ||||
|  | ||||
| 	if (host_processor_info (mach_host_self (), | ||||
| 		PROCESSOR_CPU_LOAD_INFO, | ||||
| 		&processor_count, | ||||
| 		(processor_info_array_t*)&pinfo, | ||||
| 		&info_count)) { | ||||
| 		glibtop_error_io_r (server, "host_processor_info"); | ||||
| 	} | ||||
| 	server->ncpu = (processor_count <= GLIBTOP_NCPU) ? | ||||
| 		processor_count : GLIBTOP_NCPU; | ||||
| 	vm_deallocate (mach_task_self (), (vm_address_t) pinfo, info_count); | ||||
| } | ||||
							
								
								
									
										47
									
								
								sysdeps/darwin/ppp.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										47
									
								
								sysdeps/darwin/ppp.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,47 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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 <unistd.h> | ||||
|  | ||||
| #include <glibtop.h> | ||||
| #include <glibtop/error.h> | ||||
| #include <glibtop/ppp.h> | ||||
|  | ||||
| #include <glibtop_suid.h> | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_ppp = 0; | ||||
|  | ||||
| /* Init function. */ | ||||
|  | ||||
| void | ||||
| _glibtop_init_ppp_p (glibtop *server) | ||||
| { | ||||
| 	server->sysdeps.ppp = _glibtop_sysdeps_ppp; | ||||
| } | ||||
|  | ||||
| /* Provides PPP/ISDN information. */ | ||||
|  | ||||
| void | ||||
| glibtop_get_ppp_p (glibtop *server, glibtop_ppp *buf, unsigned short device) | ||||
| { | ||||
| 	glibtop_init_p (server, (1 << GLIBTOP_SYSDEPS_PPP), 0); | ||||
|  | ||||
| 	memset (buf, 0, sizeof (glibtop_ppp)); | ||||
| } | ||||
							
								
								
									
										130
									
								
								sysdeps/darwin/procargs.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										130
									
								
								sysdeps/darwin/procargs.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,130 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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 <unistd.h> | ||||
|  | ||||
| #include <glibtop.h> | ||||
| #include <glibtop/error.h> | ||||
| #include <glibtop/procargs.h> | ||||
|  | ||||
| #include <glibtop_suid.h> | ||||
|  | ||||
| #include <sys/param.h> | ||||
| #include <sys/sysctl.h> | ||||
| #include <limits.h> | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_proc_args = | ||||
| (1L << GLIBTOP_PROC_ARGS_SIZE); | ||||
|  | ||||
| /* Init function. */ | ||||
|  | ||||
| void | ||||
| _glibtop_init_proc_args_p (glibtop *server) | ||||
| { | ||||
| 	server->sysdeps.proc_args = _glibtop_sysdeps_proc_args; | ||||
| } | ||||
|  | ||||
| /* Provides detailed information about a process. */ | ||||
|  | ||||
| char * | ||||
| glibtop_get_proc_args_p (glibtop *server, glibtop_proc_args *buf, | ||||
| 			 pid_t pid, unsigned max_len) | ||||
| { | ||||
| 	char argbuf[4096]; | ||||
| 	char *start, *end, *str; | ||||
| 	size_t bufsize = 4096; | ||||
| 	int mib [3]; | ||||
| 	unsigned length; | ||||
| 	char *args; | ||||
| 	int *ip; | ||||
|  | ||||
| 	glibtop_init_p (server, (1 << GLIBTOP_SYSDEPS_PROC_ARGS), 0); | ||||
|  | ||||
| 	memset (buf, 0, sizeof (glibtop_proc_args)); | ||||
|  | ||||
| 	mib [0] = CTL_KERN; | ||||
| 	mib [1] = KERN_PROCARGS; | ||||
| 	mib [2] = pid; | ||||
| 	 | ||||
| 	/* !!! THE FOLLOWING CODE RUNS SUID ROOT - CHANGE WITH CAUTION !!! */ | ||||
|  | ||||
| 	glibtop_suid_enter (server); | ||||
| 	if (sysctl (mib, 3, argbuf, &bufsize, NULL, 0) < 0) { | ||||
| 		glibtop_suid_leave (server); | ||||
| 		return NULL; | ||||
| 	} | ||||
| 	glibtop_suid_leave (server); | ||||
|  | ||||
| 	/* !!! END OF SUID ROOT PART !!! */ | ||||
|  | ||||
|     	end = &argbuf[bufsize]; | ||||
|  | ||||
| 	ip = (int *)end - 2; | ||||
| 	while (*--ip) { | ||||
| 		if (ip == (int *)argbuf) { | ||||
| 			return NULL; | ||||
| 		} | ||||
| 	} | ||||
|  | ||||
| 	start = (char *)(ip + 1); | ||||
| 	while (*--ip) { | ||||
| 		if (ip == (int *)argbuf) { | ||||
| 			return NULL; | ||||
| 		} | ||||
| 	} | ||||
| 	ip++; | ||||
|  | ||||
|         if ((ip[0] & 0xbfff0000) == 0xbfff0000) { | ||||
| 		ip += 2; | ||||
| 		start = (char*)(ip + (strlen ((char*)ip) + 3) / 4); | ||||
| 		while (!*start) | ||||
| 			start++; | ||||
| 	} | ||||
|  | ||||
| 	for (str = start + strlen (start); str < end - 1; str++) { | ||||
| 		if (*str == '=') { | ||||
| 			while (*str != '\0' && str > start) | ||||
| 				str--; | ||||
| 			break; | ||||
| 		} | ||||
| 	} | ||||
| 	end = str; | ||||
|  | ||||
| 	if (start[0] == '-' || start[0] == '?' || start[0] <= ' ') { | ||||
| 		return NULL; | ||||
| 	} | ||||
|  | ||||
| 	length = end - start; | ||||
| 	if (max_len != 0 && length > max_len) | ||||
| 		length = max_len; | ||||
| 	args = g_malloc(length + 1); | ||||
| 	if (args == NULL) { | ||||
| 		glibtop_warn_io_r (server, "malloc(procargs)"); | ||||
| 		return NULL; | ||||
| 	} | ||||
|  | ||||
| 	memcpy (args, start, length); | ||||
| 	args [length] = '\0'; | ||||
|  | ||||
| 	buf->size = length; | ||||
| 	buf->flags = _glibtop_sysdeps_proc_args; | ||||
|  | ||||
| 	return args; | ||||
| } | ||||
							
								
								
									
										48
									
								
								sysdeps/darwin/prockernel.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										48
									
								
								sysdeps/darwin/prockernel.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,48 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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 <unistd.h> | ||||
|  | ||||
| #include <glibtop.h> | ||||
| #include <glibtop/error.h> | ||||
| #include <glibtop/prockernel.h> | ||||
|  | ||||
| #include <glibtop_suid.h> | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_proc_kernel = 0; | ||||
|  | ||||
| /* Init function. */ | ||||
|  | ||||
| void | ||||
| _glibtop_init_proc_kernel_p (glibtop *server) | ||||
| { | ||||
| 	server->sysdeps.proc_kernel = _glibtop_sysdeps_proc_kernel; | ||||
| } | ||||
|  | ||||
| /* Provides detailed information about a process. */ | ||||
|  | ||||
| void | ||||
| glibtop_get_proc_kernel_p (glibtop *server, glibtop_proc_kernel *buf, | ||||
| 			   pid_t pid) | ||||
| { | ||||
| 	glibtop_init_p (server, (1 << GLIBTOP_SYSDEPS_PROC_KERNEL), 0); | ||||
| 	 | ||||
| 	memset (buf, 0, sizeof (glibtop_proc_kernel)); | ||||
| } | ||||
							
								
								
									
										104
									
								
								sysdeps/darwin/proclist.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										104
									
								
								sysdeps/darwin/proclist.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,104 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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 <unistd.h> | ||||
|  | ||||
| #include <glibtop.h> | ||||
| #include <glibtop/error.h> | ||||
| #include <glibtop/proclist.h> | ||||
|  | ||||
| #include <glibtop_suid.h> | ||||
|  | ||||
| #include <sys/param.h> | ||||
| #include <sys/sysctl.h>   | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_proclist = | ||||
| (1L << GLIBTOP_PROCLIST_TOTAL) + (1L << GLIBTOP_PROCLIST_NUMBER) + | ||||
| (1L << GLIBTOP_PROCLIST_SIZE); | ||||
|  | ||||
| /* Init function. */ | ||||
|  | ||||
| void | ||||
| _glibtop_init_proclist_p (glibtop *server) | ||||
| { | ||||
| 	server->sysdeps.proclist = _glibtop_sysdeps_proclist; | ||||
| } | ||||
|  | ||||
| pid_t * | ||||
| glibtop_get_proclist_p (glibtop *server, glibtop_proclist *buf, | ||||
| 			int64_t which, int64_t arg) | ||||
| { | ||||
| 	unsigned count, total, i; | ||||
| 	pid_t *pids_chain; | ||||
| 	int mib[4]; | ||||
| 	struct kinfo_proc *kp; | ||||
| 	size_t length; | ||||
|  | ||||
| 	glibtop_init_p (server, (1 << GLIBTOP_SYSDEPS_PROCLIST), 0); | ||||
|  | ||||
| 	memset (buf, 0, sizeof (glibtop_proclist)); | ||||
|  | ||||
| 	mib [0] = CTL_KERN; | ||||
| 	mib [1] = KERN_PROC; | ||||
| 	mib [2] = (int)(which & GLIBTOP_KERN_PROC_MASK); | ||||
| 	mib [3] = (int)arg; | ||||
|  | ||||
| 	if (sysctl (mib, 4, NULL, &length, NULL, 0) < 0) { | ||||
| 		glibtop_warn_io_r (server, "sysctl (proclist)"); | ||||
| 		return NULL; | ||||
| 	} | ||||
| 	if ((kp = (struct kinfo_proc *) g_malloc(length)) == NULL) { | ||||
| 		glibtop_warn_io_r (server, "malloc (proclist)"); | ||||
| 		return NULL; | ||||
| 	} | ||||
| 	if (sysctl (mib, 4, kp, &length, NULL, 0) < 0) { | ||||
| 		glibtop_warn_io_r (server, "sysctl (proclist)"); | ||||
| 		g_free (kp); | ||||
| 		return NULL; | ||||
| 	} | ||||
|  | ||||
| 	count = length / sizeof (struct kinfo_proc); | ||||
| 	pids_chain = g_malloc(count * sizeof (unsigned)); | ||||
| 	if (pids_chain ==  NULL) { | ||||
| 		glibtop_warn_io_r (server, "g_realloc (proclist)"); | ||||
| 		g_free (kp); | ||||
| 		return NULL; | ||||
| 	} | ||||
|  | ||||
| 	for (total = 0, i = 0; i < count; i++) { | ||||
| 		if ((which & GLIBTOP_EXCLUDE_IDLE) && | ||||
| 		    (kp [i].kp_proc.p_stat != SRUN)) | ||||
| 			continue; | ||||
| 		if ((which & GLIBTOP_EXCLUDE_SYSTEM) && | ||||
| 			 (kp [i].kp_eproc.e_pcred.p_ruid == 0)) | ||||
| 			continue; | ||||
| 		pids_chain [total++] = (unsigned) kp [i].kp_proc.p_pid; | ||||
| 	} | ||||
|  | ||||
| 	g_free (kp); | ||||
|  | ||||
| 	buf->number = total; | ||||
| 	buf->size = sizeof (unsigned); | ||||
| 	buf->total = total * sizeof (unsigned); | ||||
| 	buf->flags = _glibtop_sysdeps_proclist; | ||||
|  | ||||
| 	return pids_chain; | ||||
| } | ||||
|  | ||||
							
								
								
									
										134
									
								
								sysdeps/darwin/procmap.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										134
									
								
								sysdeps/darwin/procmap.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,134 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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 <unistd.h> | ||||
|  | ||||
| #include <glibtop.h> | ||||
| #include <glibtop/error.h> | ||||
| #include <glibtop/procmap.h> | ||||
|  | ||||
| #include <glibtop_suid.h> | ||||
|  | ||||
| #include <mach/mach_init.h> | ||||
| #include <mach/mach_host.h> | ||||
| #include <mach/vm_map.h> | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_proc_map = | ||||
| (1L << GLIBTOP_PROC_MAP_TOTAL) + (1L << GLIBTOP_PROC_MAP_NUMBER) + | ||||
| (1L << GLIBTOP_PROC_MAP_SIZE); | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_proc_map_entry = | ||||
| (1L << GLIBTOP_MAP_ENTRY_START) + (1L << GLIBTOP_MAP_ENTRY_END) + | ||||
| (1L << GLIBTOP_MAP_ENTRY_OFFSET) + (1L << GLIBTOP_MAP_ENTRY_PERM); | ||||
|  | ||||
| /* Init function. */ | ||||
|  | ||||
| void | ||||
| _glibtop_init_proc_map_p (glibtop *server) | ||||
| { | ||||
| 	server->sysdeps.proc_map = _glibtop_sysdeps_proc_map; | ||||
| } | ||||
|  | ||||
| /* Provides detailed information about a process. */ | ||||
|  | ||||
| glibtop_map_entry * | ||||
| glibtop_get_proc_map_p (glibtop *server, glibtop_proc_map *buf,	pid_t pid) | ||||
| { | ||||
| 	glibtop_map_entry *maps; | ||||
| 	mach_port_t task; | ||||
| 	vm_address_t address; | ||||
| 	natural_t nesting_depth; | ||||
| 	int n; | ||||
|  | ||||
| 	glibtop_init_p (server, (1 << GLIBTOP_SYSDEPS_PROC_MAP), 0); | ||||
|  | ||||
| 	memset (buf, 0, sizeof (glibtop_proc_map)); | ||||
|  | ||||
| 	/* !!! THE FOLLOWING CODE RUNS SUID ROOT - CHANGE WITH CAUTION !!! */ | ||||
|  | ||||
| 	glibtop_suid_enter (server); | ||||
|  | ||||
| 	if (task_for_pid (mach_task_self (), pid, &task) != KERN_SUCCESS) { | ||||
| 		glibtop_suid_leave (server); | ||||
| 		glibtop_warn_io_r (server, "task_for_pid (procmap)"); | ||||
| 		return NULL; | ||||
| 	} | ||||
|  | ||||
| 	maps = NULL; | ||||
| 	n = 0; | ||||
| 	address = 0; | ||||
| 	nesting_depth = 0; | ||||
| 	while (1) { | ||||
| 		vm_region_submap_info_data_64_t info; | ||||
| 		mach_msg_type_number_t info_count; | ||||
| 		vm_size_t size; | ||||
|  | ||||
| 		info_count = VM_REGION_SUBMAP_INFO_COUNT_64; | ||||
| 		if (vm_region_recurse_64 (task, &address, &size, &nesting_depth, | ||||
| 			(vm_region_recurse_info_64_t)&info, &info_count)) | ||||
| 			break; | ||||
|  | ||||
| 		if (info.is_submap) { | ||||
| 			nesting_depth++; | ||||
| 			continue; | ||||
| 		} | ||||
|  | ||||
| 		maps = g_realloc (maps, (n + 1) * sizeof (glibtop_map_entry)); | ||||
| 		if (!maps) { | ||||
| 			glibtop_suid_leave (server); | ||||
| 			return NULL; | ||||
| 		} | ||||
|  | ||||
| 		memset (maps + n, 0, sizeof (glibtop_map_entry)); | ||||
|  | ||||
| 		maps[n].start	= address; | ||||
| 		maps[n].end	= address + size - 1; | ||||
| 		maps[n].offset	= info.offset; | ||||
| 		if (info.protection & VM_PROT_READ) | ||||
| 			maps[n].perm |= GLIBTOP_MAP_PERM_READ; | ||||
| 		if (info.protection & VM_PROT_WRITE)  | ||||
| 			maps[n].perm |= GLIBTOP_MAP_PERM_WRITE; | ||||
| 		if (info.protection & VM_PROT_EXECUTE)       | ||||
| 			maps[n].perm |= GLIBTOP_MAP_PERM_EXECUTE; | ||||
| 		if (info.share_mode == SM_PRIVATE || | ||||
| 		    info.share_mode == SM_PRIVATE_ALIASED) | ||||
| 			maps[n].perm |= GLIBTOP_MAP_PERM_PRIVATE; | ||||
| 		if (info.share_mode == SM_SHARED || | ||||
| 		    info.share_mode == SM_TRUESHARED || | ||||
| 		    info.share_mode == SM_SHARED_ALIASED) | ||||
| 			maps[n].perm |= GLIBTOP_MAP_PERM_SHARED; | ||||
|  | ||||
| 		maps[n].flags	= _glibtop_sysdeps_proc_map_entry; | ||||
|  | ||||
| 		address += size; | ||||
| 		n++; | ||||
| 	} | ||||
|  | ||||
| 	glibtop_suid_leave (server); | ||||
|  | ||||
| 	/* !!! END OF SUID ROOT PART !!! */ | ||||
|  | ||||
| 	buf->number	= n; | ||||
| 	buf->size	= sizeof (glibtop_map_entry); | ||||
| 	buf->total	= n * sizeof (glibtop_map_entry); | ||||
| 	buf->flags	= _glibtop_sysdeps_proc_map; | ||||
|  | ||||
| 	return maps; | ||||
| } | ||||
							
								
								
									
										245
									
								
								sysdeps/darwin/procmem.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										245
									
								
								sysdeps/darwin/procmem.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,245 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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 <unistd.h> | ||||
|  | ||||
| #include <glibtop.h> | ||||
| #include <glibtop/error.h> | ||||
| #include <glibtop/procmem.h> | ||||
|  | ||||
| #include <glibtop_suid.h> | ||||
|  | ||||
| #include <mach/mach_init.h> | ||||
| #include <mach/mach_host.h> | ||||
| #include <mach/mach_traps.h> | ||||
| #include <mach/task.h> | ||||
| #include <mach/vm_map.h> | ||||
| #include <mach/shared_memory_server.h> | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_proc_mem = | ||||
| (1L << GLIBTOP_PROC_MEM_SIZE)     + (1L << GLIBTOP_PROC_MEM_VSIZE) + | ||||
| (1L << GLIBTOP_PROC_MEM_RESIDENT) + (1L << GLIBTOP_PROC_MEM_SHARE) + | ||||
| (1L << GLIBTOP_PROC_MEM_RSS); | ||||
|  | ||||
| /* Init function. */ | ||||
|  | ||||
| void | ||||
| _glibtop_init_proc_mem_p (glibtop *server) | ||||
| { | ||||
| 	server->sysdeps.proc_mem = _glibtop_sysdeps_proc_mem; | ||||
| } | ||||
|  | ||||
|  | ||||
| #define	SHARED_TABLE_SIZE	137 | ||||
| #define	TEXT_SEGMENT_START	(GLOBAL_SHARED_TEXT_SEGMENT) | ||||
| #define TEXT_SEGMENT_END	(GLOBAL_SHARED_TEXT_SEGMENT + SHARED_TEXT_REGION_SIZE) | ||||
| #define	DATA_SEGMENT_START	(GLOBAL_SHARED_DATA_SEGMENT) | ||||
| #define DATA_SEGMENT_END	(GLOBAL_SHARED_DATA_SEGMENT + SHARED_DATA_REGION_SIZE) | ||||
|  | ||||
| struct shared_info { | ||||
| 	unsigned obj_id; | ||||
| 	unsigned share_mode; | ||||
| 	unsigned page_count; | ||||
| 	unsigned ref_count; | ||||
| 	unsigned task_ref_count; | ||||
| 	vm_size_t size; | ||||
| 	struct shared_info *next; | ||||
| }; | ||||
| typedef struct shared_info shared_table[SHARED_TABLE_SIZE]; | ||||
| typedef struct shared_info shared_info; | ||||
|  | ||||
| static void | ||||
| shared_table_init (shared_table table) | ||||
| { | ||||
| 	memset (table, 0, sizeof (shared_table)); | ||||
| } | ||||
|  | ||||
| static void | ||||
| shared_table_free (glibtop *server, shared_table table) | ||||
| { | ||||
| 	int i; | ||||
|  | ||||
| 	for (i = 0; i < SHARED_TABLE_SIZE; i++) { | ||||
| 		shared_info *info = table [i].next; | ||||
|  | ||||
| 		while (info) { | ||||
| 			shared_info *next = info->next; | ||||
| 			g_free (info); | ||||
| 			info = next; | ||||
| 		} | ||||
| 	} | ||||
| } | ||||
|  | ||||
| static void | ||||
| shared_table_register (glibtop *server, shared_table table, | ||||
| 		       vm_region_top_info_data_t *top, vm_size_t size) | ||||
| { | ||||
| 	shared_info *info, *last; | ||||
|  | ||||
| 	info = last = &table [top->obj_id % SHARED_TABLE_SIZE]; | ||||
| 	while (info) { | ||||
| 		if (info->obj_id == top->obj_id) { | ||||
| 			info->task_ref_count++; | ||||
| 			return; | ||||
| 		} | ||||
| 		last = info; | ||||
| 		info = info->next; | ||||
| 	} | ||||
|  | ||||
| 	info = g_malloc (sizeof (shared_info)); | ||||
| 	if (info) { | ||||
| 		info->obj_id = top->obj_id; | ||||
| 		info->share_mode = top->share_mode; | ||||
| 		info->page_count = top->shared_pages_resident; | ||||
| 		info->ref_count = top->ref_count; | ||||
| 		info->task_ref_count = 1; | ||||
| 		info->size = size; | ||||
| 		info->next = NULL; | ||||
| 		last->next = info; | ||||
| 	} | ||||
| } | ||||
|  | ||||
| /* Provides detailed information about a process. */ | ||||
|  | ||||
| void | ||||
| glibtop_get_proc_mem_p (glibtop *server, glibtop_proc_mem *buf, | ||||
| 			pid_t pid) | ||||
| { | ||||
| 	task_basic_info_data_t tinfo; | ||||
|         mach_msg_type_number_t info_count; | ||||
| 	vm_size_t vsize, resident, private, vprivate, shared; | ||||
| 	kern_return_t retval; | ||||
| 	shared_table stable; | ||||
| 	vm_address_t address; | ||||
| 	mach_port_t task; | ||||
| 	int i, split; | ||||
|  | ||||
| 	glibtop_init_p (server, (1 << GLIBTOP_SYSDEPS_PROC_MEM), 0); | ||||
|  | ||||
| 	memset (buf, 0, sizeof (glibtop_proc_mem)); | ||||
|  | ||||
| 	address = 0; | ||||
| 	split = 0; | ||||
| 	vsize = resident = private = vprivate = shared = 0; | ||||
| 	shared_table_init (stable); | ||||
|  | ||||
| 	/* !!! THE FOLLOWING CODE RUNS SUID ROOT - CHANGE WITH CAUTION !!! */ | ||||
|  | ||||
| 	glibtop_suid_enter (server); | ||||
| 	retval = task_for_pid (mach_task_self (), pid, &task); | ||||
| 	glibtop_suid_leave (server); | ||||
|  | ||||
| 	/* !!! END OF SUID ROOT PART !!! */ | ||||
|  | ||||
| 	if (retval) | ||||
| 		return; | ||||
|  | ||||
| 	info_count = TASK_BASIC_INFO_COUNT; | ||||
| 	if (task_info (task, TASK_BASIC_INFO, (task_info_t)&tinfo, &info_count)) { | ||||
| 		glibtop_warn_io_r (server, "task_info (procmem)"); | ||||
| 		return; | ||||
| 	} | ||||
| 	vsize = tinfo.virtual_size; | ||||
| 	resident = tinfo.resident_size; | ||||
|  | ||||
| 	/* !!! THE FOLLOWING CODE RUNS SUID ROOT - CHANGE WITH CAUTION !!! */ | ||||
|  | ||||
| 	glibtop_suid_enter (server); | ||||
| 	while (1) { | ||||
| 		vm_region_basic_info_data_64_t basic; | ||||
| 		vm_region_top_info_data_t top; | ||||
| 		mach_port_t object_name; | ||||
| 		vm_size_t size; | ||||
|  | ||||
| 		info_count = VM_REGION_BASIC_INFO_COUNT_64; | ||||
| 		if (vm_region_64 (task, &address, &size, VM_REGION_BASIC_INFO, | ||||
| 				  (vm_region_info_t)&basic, | ||||
| 				  &info_count, &object_name)) | ||||
| 			break; | ||||
|  | ||||
| 		info_count = VM_REGION_TOP_INFO_COUNT; | ||||
| 		if (vm_region_64 (task, &address, &size, VM_REGION_TOP_INFO, | ||||
| 			       (vm_region_info_t)&top, | ||||
| 			       &info_count, &object_name)) | ||||
| 			break; | ||||
|  | ||||
| 		if (address >= TEXT_SEGMENT_START && address < DATA_SEGMENT_END) { | ||||
| 			if (!split && top.share_mode == SM_EMPTY) { | ||||
| 				if (basic.reserved) | ||||
| 					split = 1; | ||||
| 			} | ||||
| 			if (top.share_mode != SM_PRIVATE) { | ||||
| 				address += size; | ||||
| 				continue; | ||||
| 			} | ||||
| 		} | ||||
|  | ||||
| 		switch (top.share_mode) { | ||||
| 		case SM_COW: | ||||
| 			if (top.ref_count == 1) { | ||||
| 				private += top.private_pages_resident * vm_page_size; | ||||
| 				private += top.shared_pages_resident * vm_page_size; | ||||
| 				vprivate += size; | ||||
| 			} else { | ||||
| 				shared_table_register (server, stable, &top, size); | ||||
| 				vprivate += top.private_pages_resident * vm_page_size; | ||||
| 			} | ||||
| 			break; | ||||
| 		case SM_PRIVATE: | ||||
| 			private += top.private_pages_resident * vm_page_size; | ||||
| 			vprivate += size; | ||||
| 			break; | ||||
| 		case SM_SHARED: | ||||
| 			shared_table_register (server, stable, &top, size); | ||||
| 			break; | ||||
| 		} | ||||
|  | ||||
| 		address += size; | ||||
| 	} | ||||
| 	glibtop_suid_leave (server); | ||||
|  | ||||
| 	/* !!! END OF SUID ROOT PART !!! */ | ||||
|  | ||||
| 	for (i = 0; i < SHARED_TABLE_SIZE; i++) { | ||||
| 		shared_info *sinfo = &stable[i]; | ||||
|  | ||||
| 		while (sinfo) { | ||||
| 			if (sinfo->share_mode == SM_SHARED && | ||||
| 			    sinfo->ref_count == sinfo->task_ref_count) { | ||||
| 				private += sinfo->page_count * vm_page_size; | ||||
| 				vprivate += sinfo->size; | ||||
| 			} else { | ||||
| 				shared += sinfo->page_count * vm_page_size; | ||||
| 			} | ||||
| 			sinfo = sinfo->next; | ||||
| 		} | ||||
| 	} | ||||
| 	shared_table_free (server, stable); | ||||
|  | ||||
| 	if (split) | ||||
| 		vsize -= DATA_SEGMENT_END - TEXT_SEGMENT_START; | ||||
|  | ||||
| 	buf->size     = vprivate; | ||||
| 	buf->vsize    = vsize; | ||||
| 	buf->resident = resident; | ||||
| 	buf->share    = shared; | ||||
| 	buf->rss      = private; | ||||
| 	buf->flags    = _glibtop_sysdeps_proc_mem; | ||||
| } | ||||
							
								
								
									
										43
									
								
								sysdeps/darwin/procopenfiles.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										43
									
								
								sysdeps/darwin/procopenfiles.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,43 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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/procopenfiles.h> | ||||
|  | ||||
| /* Init function. */ | ||||
|  | ||||
| void | ||||
| _glibtop_init_proc_open_files_s (glibtop *server) | ||||
| { | ||||
| 	server->sysdeps.proc_open_files = 0; | ||||
| } | ||||
|  | ||||
| /* Provides detailed information about a process. */ | ||||
|  | ||||
| glibtop_open_files_entry * | ||||
| glibtop_get_proc_open_files_s (glibtop *server, glibtop_proc_open_files *buf,	pid_t pid) | ||||
| { | ||||
| 	glibtop_init_s (&server, GLIBTOP_SYSDEPS_PROC_MAP, 0); | ||||
| 	 | ||||
| 	memset (buf, 0, sizeof (glibtop_proc_open_files)); | ||||
| 	 | ||||
| 	return NULL; | ||||
| } | ||||
							
								
								
									
										48
									
								
								sysdeps/darwin/procsegment.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										48
									
								
								sysdeps/darwin/procsegment.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,48 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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 <unistd.h> | ||||
|  | ||||
| #include <glibtop.h> | ||||
| #include <glibtop/error.h> | ||||
| #include <glibtop/procsegment.h> | ||||
|  | ||||
| #include <glibtop_suid.h> | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_proc_segment = 0; | ||||
|  | ||||
| /* Init function. */ | ||||
|  | ||||
| void | ||||
| _glibtop_init_proc_segment_p (glibtop *server) | ||||
| { | ||||
| 	server->sysdeps.proc_segment = _glibtop_sysdeps_proc_segment; | ||||
| } | ||||
|  | ||||
| /* Provides detailed information about a process. */ | ||||
|  | ||||
| void | ||||
| glibtop_get_proc_segment_p (glibtop *server, glibtop_proc_segment *buf, | ||||
| 			    pid_t pid) | ||||
| { | ||||
| 	glibtop_init_p (server, (1 << GLIBTOP_SYSDEPS_PROC_SEGMENT), 0); | ||||
| 	 | ||||
| 	memset (buf, 0, sizeof (glibtop_proc_segment)); | ||||
| } | ||||
							
								
								
									
										76
									
								
								sysdeps/darwin/procsignal.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										76
									
								
								sysdeps/darwin/procsignal.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,76 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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 <unistd.h> | ||||
|  | ||||
| #include <glibtop.h> | ||||
| #include <glibtop/error.h> | ||||
| #include <glibtop/procsignal.h> | ||||
|  | ||||
| #include <glibtop_suid.h> | ||||
|  | ||||
| #include <sys/param.h> | ||||
| #include <sys/sysctl.h> | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_proc_signal = | ||||
| (1L << GLIBTOP_PROC_SIGNAL_SIGNAL) + | ||||
| (1L << GLIBTOP_PROC_SIGNAL_BLOCKED) + | ||||
| (1L << GLIBTOP_PROC_SIGNAL_SIGIGNORE) + | ||||
| (1L << GLIBTOP_PROC_SIGNAL_SIGCATCH); | ||||
|  | ||||
| /* Init function. */ | ||||
|  | ||||
| void | ||||
| _glibtop_init_proc_signal_p (glibtop *server) | ||||
| { | ||||
| 	server->sysdeps.proc_signal = _glibtop_sysdeps_proc_signal; | ||||
| } | ||||
|  | ||||
| /* Provides detailed information about a process. */ | ||||
|  | ||||
| void | ||||
| glibtop_get_proc_signal_p (glibtop *server, glibtop_proc_signal *buf, | ||||
| 			   pid_t pid) | ||||
| { | ||||
| 	int mib[4]; | ||||
| 	size_t length; | ||||
| 	struct kinfo_proc kinfo; | ||||
|  | ||||
| 	glibtop_init_p (server, (1 << GLIBTOP_SYSDEPS_PROC_SIGNAL), 0); | ||||
| 	 | ||||
| 	memset (buf, 0, sizeof (glibtop_proc_signal)); | ||||
|  | ||||
| 	mib [0] = CTL_KERN; | ||||
| 	mib [1] = KERN_PROC;       | ||||
| 	mib [2] = KERN_PROC_PID; | ||||
| 	mib [3] = pid; | ||||
|  | ||||
| 	length = sizeof (struct kinfo_proc); | ||||
| 	if (sysctl (mib, 4, &kinfo, &length, NULL, 0) < 0) { | ||||
| 		glibtop_warn_io_r (server, "sysctl (procuid)"); | ||||
| 		return; | ||||
| 	} | ||||
|  | ||||
| 	buf->signal[0]    = kinfo.kp_proc.p_siglist; | ||||
| 	buf->blocked[0]   = kinfo.kp_proc.p_sigmask; | ||||
| 	buf->sigignore[0] = kinfo.kp_proc.p_sigignore; | ||||
| 	buf->sigcatch[0]  = kinfo.kp_proc.p_sigcatch; | ||||
| 	buf->flags = _glibtop_sysdeps_proc_signal; | ||||
| } | ||||
							
								
								
									
										94
									
								
								sysdeps/darwin/procstate.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										94
									
								
								sysdeps/darwin/procstate.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,94 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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 <unistd.h> | ||||
|  | ||||
| #include <glibtop.h> | ||||
| #include <glibtop/error.h> | ||||
| #include <glibtop/procstate.h> | ||||
|  | ||||
| #include <glibtop_suid.h> | ||||
|  | ||||
| #include <sys/param.h> | ||||
| #include <sys/sysctl.h>       | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_proc_state = | ||||
| (1L << GLIBTOP_PROC_STATE_CMD) + (1L << GLIBTOP_PROC_STATE_STATE) + | ||||
| (1L << GLIBTOP_PROC_STATE_UID) + (1L << GLIBTOP_PROC_STATE_GID); | ||||
|  | ||||
| /* Init function. */ | ||||
|  | ||||
| void | ||||
| _glibtop_init_proc_state_p (glibtop *server) | ||||
| { | ||||
| 	server->sysdeps.proc_state = _glibtop_sysdeps_proc_state; | ||||
| } | ||||
|  | ||||
| /* Provides detailed information about a process. */ | ||||
|  | ||||
| void | ||||
| glibtop_get_proc_state_p (glibtop *server, glibtop_proc_state *buf, | ||||
| 			  pid_t pid) | ||||
| { | ||||
| 	int mib[4]; | ||||
| 	size_t length; | ||||
| 	struct kinfo_proc kinfo; | ||||
|  | ||||
| 	glibtop_init_p (server, (1 << GLIBTOP_SYSDEPS_PROC_STATE), 0); | ||||
| 	 | ||||
| 	memset (buf, 0, sizeof (glibtop_proc_state)); | ||||
|  | ||||
| 	mib [0] = CTL_KERN; | ||||
| 	mib [1] = KERN_PROC; | ||||
| 	mib [2] = KERN_PROC_PID; | ||||
| 	mib [3] = pid; | ||||
|  | ||||
| 	length = sizeof (struct kinfo_proc); | ||||
| 	if (sysctl (mib, 4, &kinfo, &length, NULL, 0) < 0) { | ||||
| 		glibtop_warn_io_r (server, "sysctl (procstat)"); | ||||
| 		return; | ||||
| 	} | ||||
|  | ||||
| 	strncpy (buf->cmd, kinfo.kp_proc.p_comm, sizeof (buf->cmd) - 1); | ||||
| 	buf->cmd [sizeof (buf->cmd) - 1] = 0; | ||||
| 	buf->uid = kinfo.kp_eproc.e_pcred.p_svuid; | ||||
| 	buf->gid = kinfo.kp_eproc.e_pcred.p_svgid; | ||||
| 	switch (kinfo.kp_proc.p_stat) { | ||||
| 	case SIDL: | ||||
| 		buf->state = 0; | ||||
| 		break; | ||||
| 	case SRUN: | ||||
| 		buf->state = 'R'; | ||||
| 		break; | ||||
| 	case SSLEEP: | ||||
| 		buf->state = 'S'; | ||||
| 		break; | ||||
| 	case SSTOP: | ||||
| 		buf->state = 'T'; | ||||
| 		break; | ||||
| 	case SZOMB: | ||||
| 		buf->state = 'Z'; | ||||
| 		break; | ||||
| 	default: | ||||
| 		return; | ||||
| 	} | ||||
| 	buf->flags = _glibtop_sysdeps_proc_state; | ||||
| } | ||||
|  | ||||
							
								
								
									
										118
									
								
								sysdeps/darwin/proctime.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										118
									
								
								sysdeps/darwin/proctime.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,118 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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 <unistd.h> | ||||
|  | ||||
| #include <glibtop.h> | ||||
| #include <glibtop/error.h> | ||||
| #include <glibtop/proctime.h> | ||||
|  | ||||
| #include <glibtop_suid.h> | ||||
|  | ||||
| #include <mach/mach_init.h> | ||||
| #include <mach/mach_host.h> | ||||
| #include <mach/mach_port.h> | ||||
| #include <mach/task.h> | ||||
| #include <mach/vm_map.h> | ||||
| #include <sys/types.h> | ||||
| #include <sys/sysctl.h> | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_proc_time = | ||||
| (1L << GLIBTOP_PROC_TIME_UTIME) + (1L << GLIBTOP_PROC_TIME_STIME) + | ||||
| (1L << GLIBTOP_PROC_TIME_FREQUENCY) + (1L << GLIBTOP_PROC_TIME_START_TIME); | ||||
|  | ||||
| #define tv2sec(tv) (((u_int64_t) tv.seconds * 1000000) + (u_int64_t) tv.microseconds) | ||||
|  | ||||
| /* Init function. */ | ||||
|  | ||||
| void | ||||
| _glibtop_init_proc_time_p (glibtop *server) | ||||
| { | ||||
| 	server->sysdeps.proc_time = _glibtop_sysdeps_proc_time; | ||||
| } | ||||
|  | ||||
| /* Provides detailed information about a process. */ | ||||
|  | ||||
| void | ||||
| glibtop_get_proc_time_p (glibtop *server, glibtop_proc_time *buf, | ||||
| 			 pid_t pid) | ||||
| { | ||||
| 	unsigned int count; | ||||
| 	task_basic_info_data_t ti; | ||||
| 	task_thread_times_info_data_t tti; | ||||
| 	task_port_t task; | ||||
| 	time_value_t utime = {0, 0}, stime = {0, 0}; | ||||
| 	size_t length; | ||||
| 	struct kinfo_proc kinfo; | ||||
| 	int mib[] = { CTL_KERN, KERN_PROC, KERN_PROC_PID, 0 }; | ||||
|  | ||||
| 	glibtop_init_p (server, (1 << GLIBTOP_SYSDEPS_PROC_TIME), 0); | ||||
|  | ||||
| 	memset (buf, 0, sizeof (glibtop_proc_time)); | ||||
|  | ||||
| 	mib[3] = pid; | ||||
| 	length = sizeof (kinfo); | ||||
| 	if (sysctl (mib, 4, &kinfo, &length, NULL, 0) < 0) { | ||||
| 		glibtop_suid_leave (server); | ||||
| 		return; | ||||
| 	} | ||||
|  | ||||
| 	/* !!! THE FOLLOWING CODE RUNS SUID ROOT - CHANGE WITH CAUTION !!! */ | ||||
|  | ||||
| 	glibtop_suid_enter (server); | ||||
|  | ||||
| 	if (task_for_pid (mach_task_self(), pid, &task) != KERN_SUCCESS) { | ||||
| 		glibtop_suid_leave (server); | ||||
| 		return; | ||||
| 	} | ||||
|  | ||||
| 	glibtop_suid_leave (server); | ||||
|  | ||||
| 	/* !!! END OF SUID ROOT PART !!! */ | ||||
|  | ||||
| 	count = TASK_BASIC_INFO_COUNT; | ||||
| 	if (task_info(task, TASK_BASIC_INFO, (task_info_t)&ti, &count) != KERN_SUCCESS) { | ||||
| 		glibtop_warn_io_r (server, "task_info (proctime)"); | ||||
| 		if (task != mach_task_self()) | ||||
| 			mach_port_deallocate (mach_task_self(), task); | ||||
| 		return; | ||||
| 	} | ||||
|  | ||||
| 	count = TASK_THREAD_TIMES_INFO_COUNT; | ||||
| 	if (task_info(task, TASK_THREAD_TIMES_INFO, (task_info_t)&tti, &count) != KERN_SUCCESS) { | ||||
| 		glibtop_warn_io_r (server, "task_info (proctime)"); | ||||
| 		if (task != mach_task_self()) | ||||
| 			mach_port_deallocate (mach_task_self(), task); | ||||
| 		return; | ||||
| 	} | ||||
|  | ||||
| 	time_value_add (&utime, &ti.user_time); | ||||
| 	time_value_add (&stime, &ti.system_time); | ||||
| 	time_value_add (&utime, &tti.user_time); | ||||
| 	time_value_add (&stime, &tti.system_time); | ||||
|  | ||||
| 	/* use the same frequency as cpu.c */ | ||||
| 	buf->utime  = tv2sec (utime) / 10000; | ||||
| 	buf->stime  = tv2sec (stime) / 10000; | ||||
| 	buf->frequency = 1000000 / 10000; | ||||
| 	buf->start_time = kinfo.kp_proc.p_starttime.tv_sec; | ||||
|  | ||||
| 	buf->flags  = _glibtop_sysdeps_proc_time; | ||||
| } | ||||
							
								
								
									
										83
									
								
								sysdeps/darwin/procuid.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										83
									
								
								sysdeps/darwin/procuid.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,83 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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 <unistd.h> | ||||
|  | ||||
| #include <glibtop.h> | ||||
| #include <glibtop/error.h> | ||||
| #include <glibtop/procuid.h> | ||||
|  | ||||
| #include <glibtop_suid.h> | ||||
|  | ||||
| #include <sys/param.h> | ||||
| #include <sys/sysctl.h> | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_proc_uid = | ||||
| (1L << GLIBTOP_PROC_UID_UID) + (1L << GLIBTOP_PROC_UID_EUID) + | ||||
| (1L << GLIBTOP_PROC_UID_GID) + (1L << GLIBTOP_PROC_UID_EGID) + | ||||
| (1L << GLIBTOP_PROC_UID_PID) + (1L << GLIBTOP_PROC_UID_PPID) + | ||||
| (1L << GLIBTOP_PROC_UID_PGRP) + (1L << GLIBTOP_PROC_UID_TTY) + | ||||
| (1L << GLIBTOP_PROC_UID_TPGID); | ||||
|  | ||||
| /* Init function. */ | ||||
|  | ||||
| void | ||||
| _glibtop_init_proc_uid_p (glibtop *server) | ||||
| { | ||||
| 	server->sysdeps.proc_uid = _glibtop_sysdeps_proc_uid; | ||||
| } | ||||
|  | ||||
| /* Provides detailed information about a process. */ | ||||
|  | ||||
| void | ||||
| glibtop_get_proc_uid_p (glibtop *server, glibtop_proc_uid *buf, | ||||
| 			pid_t pid) | ||||
| { | ||||
| 	int mib[4]; | ||||
| 	size_t length; | ||||
| 	struct kinfo_proc kinfo; | ||||
|  | ||||
| 	glibtop_init_p (server, (1 << GLIBTOP_SYSDEPS_PROC_UID), 0); | ||||
| 	 | ||||
| 	memset (buf, 0, sizeof (glibtop_proc_uid)); | ||||
|  | ||||
| 	mib [0] = CTL_KERN; | ||||
| 	mib [1] = KERN_PROC; | ||||
| 	mib [2] = KERN_PROC_PID; | ||||
| 	mib [3] = pid; | ||||
|  | ||||
| 	length = sizeof (struct kinfo_proc); | ||||
| 	if (sysctl (mib, 4, &kinfo, &length, NULL, 0) < 0) { | ||||
| 		glibtop_warn_io_r (server, "sysctl (procuid)"); | ||||
| 		return; | ||||
| 	} | ||||
|  | ||||
| 	buf->uid      = kinfo.kp_eproc.e_pcred.p_ruid; | ||||
| 	buf->euid     = kinfo.kp_eproc.e_pcred.p_svuid; | ||||
| 	buf->gid      = kinfo.kp_eproc.e_pcred.p_rgid; | ||||
| 	buf->egid     = kinfo.kp_eproc.e_pcred.p_svgid; | ||||
| 	buf->ppid     = kinfo.kp_eproc.e_ppid; | ||||
| 	buf->pgrp     = kinfo.kp_eproc.e_pgid; | ||||
| 	buf->tpgid    = kinfo.kp_eproc.e_tpgid; | ||||
| 	buf->nice     = kinfo.kp_proc.p_nice; | ||||
| 	buf->priority = kinfo.kp_proc.p_priority; | ||||
|  | ||||
| 	buf->flags    = _glibtop_sysdeps_proc_uid; | ||||
| } | ||||
							
								
								
									
										50
									
								
								sysdeps/darwin/procwd.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										50
									
								
								sysdeps/darwin/procwd.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,50 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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/procwd.h> | ||||
| #include <glibtop/error.h> | ||||
|  | ||||
| #include <glibtop_suid.h> | ||||
|  | ||||
| #include <unistd.h> | ||||
| #include <dirent.h> | ||||
| #include <sys/types.h> | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_proc_wd = 0; | ||||
|  | ||||
| /* Init function. */ | ||||
|  | ||||
| void | ||||
| _glibtop_init_proc_wd_p (glibtop *server) | ||||
| { | ||||
| 	server->sysdeps.proc_wd = _glibtop_sysdeps_proc_wd; | ||||
| } | ||||
|  | ||||
| /* Provides detailed information about a process. */ | ||||
|  | ||||
| char ** | ||||
| glibtop_get_proc_wd_p (glibtop *server, glibtop_proc_wd *buf, | ||||
| 			pid_t pid) | ||||
| { | ||||
| 	glibtop_init_p (server, GLIBTOP_SYSDEPS_PROC_WD, 0); | ||||
|  | ||||
| 	memset (buf, 0, sizeof (glibtop_proc_wd)); | ||||
| 	return NULL; | ||||
| } | ||||
							
								
								
									
										47
									
								
								sysdeps/darwin/sem_limits.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										47
									
								
								sysdeps/darwin/sem_limits.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,47 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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 <unistd.h> | ||||
|  | ||||
| #include <glibtop.h> | ||||
| #include <glibtop/error.h> | ||||
| #include <glibtop/sem_limits.h> | ||||
|  | ||||
| #include <glibtop_suid.h> | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_sem_limits = 0; | ||||
|  | ||||
| /* Init function. */ | ||||
|  | ||||
| void | ||||
| _glibtop_init_sem_limits_p (glibtop *server) | ||||
| { | ||||
| 	server->sysdeps.sem_limits = _glibtop_sysdeps_sem_limits; | ||||
| } | ||||
|  | ||||
| /* Provides information about sysv sem limits. */ | ||||
|  | ||||
| void | ||||
| glibtop_get_sem_limits_p (glibtop *server, glibtop_sem_limits *buf) | ||||
| { | ||||
| 	glibtop_init_p (server, (1 << GLIBTOP_SYSDEPS_SEM_LIMITS), 0); | ||||
| 	 | ||||
| 	memset (buf, 0, sizeof (glibtop_sem_limits)); | ||||
| } | ||||
							
								
								
									
										47
									
								
								sysdeps/darwin/shm_limits.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										47
									
								
								sysdeps/darwin/shm_limits.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,47 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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 <unistd.h> | ||||
|  | ||||
| #include <glibtop.h> | ||||
| #include <glibtop/error.h> | ||||
| #include <glibtop/shm_limits.h> | ||||
|  | ||||
| #include <glibtop_suid.h> | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_shm_limits = 0; | ||||
|  | ||||
| /* Init function. */ | ||||
|  | ||||
| void | ||||
| _glibtop_init_shm_limits_p (glibtop *server) | ||||
| { | ||||
| 	server->sysdeps.shm_limits = _glibtop_sysdeps_shm_limits; | ||||
| } | ||||
|  | ||||
| /* Provides information about sysv ipc limits. */ | ||||
|  | ||||
| void | ||||
| glibtop_get_shm_limits_p (glibtop *server, glibtop_shm_limits *buf) | ||||
| { | ||||
| 	glibtop_init_p (server, (1 << GLIBTOP_SYSDEPS_SHM_LIMITS), 0); | ||||
| 	 | ||||
| 	memset (buf, 0, sizeof (glibtop_shm_limits)); | ||||
| } | ||||
							
								
								
									
										60
									
								
								sysdeps/darwin/siglist.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										60
									
								
								sysdeps/darwin/siglist.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,60 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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 <unistd.h> | ||||
|  | ||||
| #include <glibtop.h> | ||||
| #include <glibtop/signal.h> | ||||
|  | ||||
| const glibtop_signame glibtop_sys_siglist [] = | ||||
| { {  1, "SIGHUP",    NULL },	/* hangup */ | ||||
|   {  2, "SIGINT",    NULL },	/* interrupt */ | ||||
|   {  3, "SIGQUIT",   NULL },	/* quit */ | ||||
|   {  4, "SIGILL",    NULL },	/* illegal instruction */ | ||||
|   {  5, "SIGTRAP",   NULL },	/* trace trap */ | ||||
|   {  6, "SIGTRAP",   NULL },	/* abort */ | ||||
|   {  7, "SIGEMT",    NULL },	/* EMT instruction */ | ||||
|   {  8, "SIGFPE",    NULL },	/* floating point exception */ | ||||
|   {  9, "SIGKILL",   NULL },	/* kill */ | ||||
|   { 10, "SIGBUS",    NULL },	/* bus error */ | ||||
|   { 11, "SIGSEGV",   NULL },	/* segmentation violation */ | ||||
|   { 12, "SIGSYS",    NULL },	/* bad argument to system call */ | ||||
|   { 13, "SIGPIPE",   NULL },	/* write on a pipe with no one to read it */ | ||||
|   { 14, "SIGALRM",   NULL },	/* alarm clock */ | ||||
|   { 15, "SIGTERM",   NULL },	/* software termination signal from kill */ | ||||
|   { 16, "SIGURG",    NULL },	/* urgent condition on IO channel */ | ||||
|   { 17, "SIGSTOP",   NULL },	/* sendable stop signal not from tty */ | ||||
|   { 18, "SIGTSTP",   NULL },	/* stop signal from tty */ | ||||
|   { 19, "SIGCONT",   NULL },	/* continue a stopped process */ | ||||
|   { 20, "SIGCHLD",   NULL },	/* to parent on child stop or exit */ | ||||
|   { 21, "SIGTTIN",   NULL },	/* to readers pgrp upon background tty read */ | ||||
|   { 22, "SIGTTOU",   NULL },	/* like TTIN for output */ | ||||
|   { 23, "SIGIO",     NULL },	/* input/output possible signal */ | ||||
|   { 24, "SIGXCPU",   NULL },	/* exceeded CPU time limit */ | ||||
|   { 25, "SIGXFSZ",   NULL },	/* exceeded file size limit */ | ||||
|   { 26, "SIGVTALRM", NULL },	/* virtual time alarm */ | ||||
|   { 27, "SIGPROF",   NULL },	/* profiling time alarm */ | ||||
|   { 28, "SIGWINCH",  NULL },	/* window size changes */ | ||||
|   { 29, "SIGWINFO",  NULL },	/* information request */ | ||||
|   { 30, "SIGUSR1",   NULL },	/* user defined signal 1 */ | ||||
|   { 31, "SIGUSR2",   NULL },	/* user defined signal 2 */ | ||||
|   {  0, NULL,        NULL } | ||||
| }; | ||||
|  | ||||
							
								
								
									
										110
									
								
								sysdeps/darwin/swap.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										110
									
								
								sysdeps/darwin/swap.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,110 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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 <unistd.h> | ||||
|  | ||||
| #include <glibtop.h> | ||||
| #include <glibtop/error.h> | ||||
| #include <glibtop/swap.h> | ||||
|  | ||||
| #include <glibtop_suid.h> | ||||
|  | ||||
| #include <mach/mach_host.h> | ||||
| #include <mach/host_info.h> | ||||
| #include <mach/mach_init.h> | ||||
| #include <sys/types.h> | ||||
| #include <sys/stat.h> | ||||
| #include <sys/param.h> | ||||
| #include <sys/mount.h> | ||||
| #include <dirent.h> | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_swap = | ||||
| (1L << GLIBTOP_SWAP_TOTAL) + (1L << GLIBTOP_SWAP_USED) + | ||||
| (1L << GLIBTOP_SWAP_FREE) + (1L << GLIBTOP_SWAP_PAGEIN) + | ||||
| (1L << GLIBTOP_SWAP_PAGEOUT); | ||||
|  | ||||
| /* Init function. */ | ||||
|  | ||||
| void | ||||
| _glibtop_init_swap_p (glibtop *server) | ||||
| { | ||||
| 	server->sysdeps.swap = _glibtop_sysdeps_swap; | ||||
| } | ||||
|  | ||||
| /* Provides information about swap usage. */ | ||||
|  | ||||
| void | ||||
| glibtop_get_swap_p (glibtop *server, glibtop_swap *buf) | ||||
| { | ||||
| 	vm_statistics_data_t vm_info; | ||||
| 	mach_msg_type_number_t info_count; | ||||
| 	DIR *dirp; | ||||
| 	struct dirent *dp; | ||||
| 	struct statfs sfs; | ||||
| 	u_int64_t total, used; | ||||
|  | ||||
| 	glibtop_init_p (server, (1 << GLIBTOP_SYSDEPS_SWAP), 0); | ||||
|  | ||||
| 	memset (buf, 0, sizeof (glibtop_swap)); | ||||
|  | ||||
| 	total = used = 0; | ||||
|  | ||||
| 	dirp = opendir ("/private/var/vm"); | ||||
| 	if (!dirp) { | ||||
| 		glibtop_warn_io_r (server, "opendir (swap)"); | ||||
| 		return; | ||||
| 	} | ||||
| 	while ((dp = readdir (dirp)) != NULL) { | ||||
| 		struct stat sb; | ||||
| 		char fname [MAXNAMLEN]; | ||||
|  | ||||
| 		if (strncmp (dp->d_name, "swapfile", 8)) | ||||
| 			continue; | ||||
|  | ||||
| 		strcpy (fname, "/private/var/vm/"); | ||||
| 		strcat (fname, dp->d_name); | ||||
| 		if (stat (fname, &sb) < 0) | ||||
| 			continue; | ||||
|  | ||||
| 		used += sb.st_size; | ||||
| 	} | ||||
| 	closedir (dirp); | ||||
|  | ||||
| 	if (statfs ("/private/var/vm", &sfs) < 0) { | ||||
| 		glibtop_warn_io_r (server, "statfs (swap)"); | ||||
| 		return; | ||||
| 	} | ||||
| 	total = (u_int64_t)sfs.f_bfree * sfs.f_bsize + used; | ||||
|  | ||||
| 	info_count = HOST_VM_INFO_COUNT; | ||||
| 	if (host_statistics (mach_host_self (), HOST_VM_INFO, | ||||
| 			     (host_info_t) &vm_info, &info_count)) { | ||||
| 		glibtop_warn_io_r (server, "host_statistics (swap)"); | ||||
| 		return; | ||||
| 	} | ||||
|  | ||||
| 	buf->total    = total; | ||||
| 	buf->used     = used; | ||||
| 	buf->free     = total - used; | ||||
| 	buf->pagein   = vm_info.pageins; | ||||
| 	buf->pageout  = vm_info.pageouts; | ||||
| 	buf->flags    = _glibtop_sysdeps_swap; | ||||
| } | ||||
|  | ||||
							
								
								
									
										90
									
								
								sysdeps/darwin/sysinfo.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										90
									
								
								sysdeps/darwin/sysinfo.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,90 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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 <sys/param.h> | ||||
| #include <sys/types.h> | ||||
| #include <sys/sysctl.h> | ||||
| #include <glibtop/error.h> | ||||
| #include <glibtop/cpu.h> | ||||
| #include <glibtop/sysinfo.h> | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_sysinfo = | ||||
| (1L << GLIBTOP_SYSINFO_CPUINFO); | ||||
|  | ||||
| static glibtop_sysinfo sysinfo = { .flags = 0 }; | ||||
|  | ||||
| static void | ||||
| init_sysinfo (glibtop *server) | ||||
| { | ||||
| 	char *model; | ||||
| 	guint64 ncpus = 1; | ||||
| 	int mhz = 0; | ||||
| 	size_t len; | ||||
|  | ||||
| 	if (G_LIKELY (sysinfo.flags)) | ||||
| 		return; | ||||
|  | ||||
| 	glibtop_init_s (&server, GLIBTOP_SYSDEPS_CPU, 0); | ||||
|  | ||||
| 	len = sizeof (ncpus); | ||||
| 	sysctlbyname ("hw.ncpu", &ncpus, &len, NULL, 0); | ||||
| 	len = 0; | ||||
| 	sysctlbyname ("hw.model", NULL, &len, NULL, 0); | ||||
| 	model = g_malloc (len); | ||||
| 	sysctlbyname ("hw.model", model, &len, NULL, 0); | ||||
| 	len = sizeof (mhz); | ||||
| 	sysctlbyname ("hw.cpufrequency", &mhz, &len, NULL, 0); | ||||
| 	mhz = mhz / 1000000; | ||||
|  | ||||
| 	for (sysinfo.ncpu = 0; | ||||
| 	     sysinfo.ncpu < GLIBTOP_NCPU && sysinfo.ncpu < ncpus; | ||||
| 	     sysinfo.ncpu++) { | ||||
| 		glibtop_entry * const cpuinfo = &sysinfo.cpuinfo[sysinfo.ncpu]; | ||||
|  | ||||
| 		cpuinfo->labels = g_ptr_array_new (); | ||||
|  | ||||
| 		cpuinfo->values = g_hash_table_new_full(g_str_hash, | ||||
| 							g_str_equal, | ||||
| 							NULL, g_free); | ||||
|  | ||||
| 		g_ptr_array_add (cpuinfo->labels, "processor"); | ||||
| 		g_hash_table_insert (cpuinfo->values, "processor", | ||||
| 				     g_strdup_printf("%u", (guint)sysinfo.ncpu)); | ||||
|  | ||||
| 		g_ptr_array_add (cpuinfo->labels, "vendor_id"); | ||||
| 		g_hash_table_insert (cpuinfo->values, "vendor_id", | ||||
| 				     g_strdup(model)); | ||||
|  | ||||
| 		g_ptr_array_add (cpuinfo->labels, "cpu MHz"); | ||||
| 		g_hash_table_insert (cpuinfo->values, "cpu MHz", | ||||
| 				     g_strdup_printf("%d", mhz)); | ||||
| 	} | ||||
|  | ||||
| 	g_free (model); | ||||
|  | ||||
| 	sysinfo.flags = _glibtop_sysdeps_sysinfo; | ||||
| } | ||||
|  | ||||
| const glibtop_sysinfo * | ||||
| glibtop_get_sysinfo_s (glibtop *server) | ||||
| { | ||||
| 	init_sysinfo (server); | ||||
| 	return &sysinfo; | ||||
| } | ||||
							
								
								
									
										66
									
								
								sysdeps/darwin/uptime.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										66
									
								
								sysdeps/darwin/uptime.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,66 @@ | ||||
| /* | ||||
|    This file is part of LibGTop 2.0. | ||||
|  | ||||
|    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 <unistd.h> | ||||
|  | ||||
| #include <glibtop.h> | ||||
| #include <glibtop/error.h> | ||||
| #include <glibtop/uptime.h> | ||||
|  | ||||
| #include <glibtop_suid.h> | ||||
|  | ||||
| #include <sys/param.h> | ||||
| #include <sys/sysctl.h> | ||||
| #include <time.h> | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_uptime = | ||||
| (1L << GLIBTOP_UPTIME_UPTIME); | ||||
|  | ||||
| /* Init function. */ | ||||
|  | ||||
| void | ||||
| _glibtop_init_uptime_p (glibtop *server) | ||||
| { | ||||
| 	server->sysdeps.uptime = _glibtop_sysdeps_uptime; | ||||
| } | ||||
|  | ||||
| /* Provides uptime and idle time. */ | ||||
|  | ||||
| void | ||||
| glibtop_get_uptime_p (glibtop *server, glibtop_uptime *buf) | ||||
| { | ||||
| 	int mib [] = { CTL_KERN, KERN_BOOTTIME }; | ||||
| 	struct timeval boottime; | ||||
| 	size_t size = sizeof (boottime); | ||||
| 	time_t now; | ||||
|  | ||||
| 	glibtop_init_p (server, (1 << GLIBTOP_SYSDEPS_UPTIME), 0); | ||||
| 	 | ||||
| 	memset (buf, 0, sizeof (glibtop_uptime)); | ||||
|  | ||||
| 	/* copied from gkrellm port */ | ||||
|  | ||||
| 	if (sysctl (mib, 2, &boottime, &size, NULL, 0) == -1) | ||||
| 		return; | ||||
| 	time (&now); | ||||
|  | ||||
| 	buf->uptime = now - boottime.tv_sec + 30; | ||||
| 	buf->flags = _glibtop_sysdeps_uptime; | ||||
| } | ||||
| @@ -63,9 +63,11 @@ glibtop_open_p (glibtop *server, const char *program_name, | ||||
| 	server->machine.euid = geteuid (); | ||||
| 	server->machine.gid = getgid (); | ||||
| 	server->machine.egid = getegid (); | ||||
|  | ||||
| #if defined(__FreeBSD_kernel__) | ||||
| 	server->os_version_code = __FreeBSD_kernel_version; | ||||
| #else | ||||
| 	server->os_version_code = __FreeBSD_version; | ||||
|  | ||||
| #endif | ||||
| 	/* Setup machine-specific data */ | ||||
| 	server->machine.kd = kvm_open (NULL, NULL, NULL, O_RDONLY, "kvm_open"); | ||||
|  | ||||
|   | ||||
| @@ -98,9 +98,9 @@ glibtop_get_proc_mem_p (glibtop *server, glibtop_proc_mem *buf, | ||||
|        buf->rss_rlim = pinfo [0].ki_rssize; | ||||
|  | ||||
|        buf->vsize = buf->size = (guint64) | ||||
| 	       (pinfo [0].ki_size / 1024); | ||||
| 	       pinfo [0].ki_size; | ||||
|        buf->resident = buf->rss = (guint64) | ||||
| 	       ps_pgtok (pinfo [0].ki_rssize); | ||||
| 	       ps_pgtok (pinfo [0].ki_rssize) * 1024; | ||||
|  | ||||
| 	/* Now we get the shared memory. */ | ||||
|  | ||||
|   | ||||
| @@ -8,6 +8,7 @@ libgtop_sysdeps_2_0_la_SOURCES	= open.c close.c cpu.c mem.c swap.c \ | ||||
| 				  proctime.c procmem.c procsignal.c prockernel.c \ | ||||
| 				  procsegment.c procargs.c procmap.c siglist.c \ | ||||
| 				  sysinfo.c netload.c ppp.c glibtop_private.c \ | ||||
| 				  mountlist.c \ | ||||
| 				  fsusage.c netlist.c procopenfiles.c procwd.c | ||||
|  | ||||
| libgtop_sysdeps_2_0_la_LIBADD	=  @GLIB_LIBS@ | ||||
|   | ||||
| @@ -1,6 +1,7 @@ | ||||
| #include <config.h> | ||||
| #include <glibtop.h> | ||||
| #include <glibtop/fsusage.h> | ||||
| #include <glibtop/error.h> | ||||
|  | ||||
| #include "glibtop_private.h" | ||||
|  | ||||
| @@ -10,15 +11,11 @@ | ||||
| #include <sys/types.h> | ||||
| #include <sys/stat.h> | ||||
| #include <linux/kdev_t.h> | ||||
|  | ||||
| #include <sys/statvfs.h> | ||||
| #include <stdio.h> | ||||
| #include <string.h> | ||||
| #include <stdlib.h> | ||||
|  | ||||
| void | ||||
| _glibtop_linux_get_fsusage_read_write(glibtop *server, | ||||
| 				      glibtop_fsusage *buf, | ||||
| 				      const char *path); | ||||
|  | ||||
| /* | ||||
|  * Linux 2.6.x | ||||
| @@ -127,10 +124,8 @@ static void linux_2_4_0(glibtop *server, glibtop_fsusage *buf, const char *path) | ||||
| } | ||||
|  | ||||
|  | ||||
| void | ||||
| _glibtop_linux_get_fsusage_read_write(glibtop *server, | ||||
| 				      glibtop_fsusage *buf, | ||||
| 				      const char *path) | ||||
| static void | ||||
| get_fsusage_read_write(glibtop *server, glibtop_fsusage *buf, const char *path) | ||||
| { | ||||
|   if(server->os_version_code >= LINUX_VERSION_CODE(2, 6, 0)) | ||||
|     { | ||||
| @@ -141,3 +136,39 @@ _glibtop_linux_get_fsusage_read_write(glibtop *server, | ||||
|       linux_2_4_0(server, buf, path); | ||||
|     } | ||||
| } | ||||
|  | ||||
|  | ||||
| /* the following comes from sysdeps/common/mountlist.c if copyright matters... | ||||
|  */ | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_fsusage = | ||||
| (1L << GLIBTOP_FSUSAGE_BLOCKS) + (1L << GLIBTOP_FSUSAGE_BFREE) | ||||
| + (1L << GLIBTOP_FSUSAGE_BAVAIL) + (1L << GLIBTOP_FSUSAGE_FILES) | ||||
| + (1L << GLIBTOP_FSUSAGE_FFREE) + (1L << GLIBTOP_FSUSAGE_BLOCK_SIZE); | ||||
|  | ||||
|  | ||||
|  | ||||
| void | ||||
| glibtop_get_fsusage_s(glibtop *server, glibtop_fsusage *buf, const char *path) | ||||
| { | ||||
|   struct statvfs fsd; | ||||
|  | ||||
|   glibtop_init_r(&server, 0, 0); | ||||
|   memset(buf, 0, sizeof(glibtop_fsusage)); | ||||
|  | ||||
|   if (statvfs(path, &fsd) < 0) { | ||||
|     glibtop_warn_r(server, "statvfs '%s' failed", path); | ||||
|     return; | ||||
|   } | ||||
|  | ||||
|   buf->blocks = fsd.f_blocks; | ||||
|   buf->bfree  = fsd.f_bfree; | ||||
|   buf->bavail = (fsd.f_bavail > fsd.f_bfree) ? 0 : fsd.f_bavail; | ||||
|   buf->files  = fsd.f_files; | ||||
|   buf->ffree  = fsd.f_ffree; | ||||
|   buf->block_size = fsd.f_bsize; | ||||
|   buf->flags = _glibtop_sysdeps_fsusage; | ||||
|  | ||||
|   /* setting additional flags is delegated */ | ||||
|   get_fsusage_read_write(server, buf, path); | ||||
| } | ||||
|   | ||||
| @@ -17,27 +17,31 @@ | ||||
| unsigned long long | ||||
| get_scaled(const char *buffer, const char *key) | ||||
| { | ||||
| 	const char    *ptr; | ||||
| 	const char    *ptr = buffer;; | ||||
| 	char	      *next; | ||||
| 	unsigned long long value = 0; | ||||
| 	unsigned long long value; | ||||
|  | ||||
| 	if (G_LIKELY((ptr = strstr(buffer, key)))) | ||||
| 	{ | ||||
| 		ptr += strlen(key); | ||||
| 		value = strtoull(ptr, &next, 0); | ||||
|  | ||||
| 		for ( ; *next; ++next) { | ||||
| 			if (*next == 'k') { | ||||
| 				value *= 1024; | ||||
| 				break; | ||||
| 			} else if (*next == 'M') { | ||||
| 				value *= 1024 * 1024; | ||||
| 				break; | ||||
| 			} | ||||
| 	if (key) { | ||||
| 		if (G_LIKELY((ptr = strstr(buffer, key)))) | ||||
| 			ptr += strlen(key); | ||||
| 		else { | ||||
| 			g_warning("Could not read key '%s' in buffer '%s'", | ||||
| 				  key, buffer); | ||||
| 			return 0; | ||||
| 		} | ||||
| 	} else | ||||
| 		g_warning("Could not read key '%s' in buffer '%s'", | ||||
| 			  key, buffer); | ||||
| 	} | ||||
|  | ||||
| 	value = strtoull(ptr, &next, 0); | ||||
|  | ||||
| 	for ( ; *next; ++next) { | ||||
| 		if (*next == 'k') { | ||||
| 			value *= 1024; | ||||
| 			break; | ||||
| 		} else if (*next == 'M') { | ||||
| 			value *= 1024 * 1024; | ||||
| 			break; | ||||
| 		} | ||||
| 	} | ||||
|  | ||||
| 	return value; | ||||
| } | ||||
|   | ||||
							
								
								
									
										166
									
								
								sysdeps/linux/mountlist.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										166
									
								
								sysdeps/linux/mountlist.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,166 @@ | ||||
| /* mountlist.c -- return a list of mounted filesystems | ||||
|    Copyright (C) 1991, 1992 Free Software Foundation, Inc. | ||||
|  | ||||
|    This file is a fork of sysdeps/common/mountlist.c. | ||||
|  | ||||
|    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, 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */ | ||||
|  | ||||
|  | ||||
| /* | ||||
| Local Variables: | ||||
| mode: C | ||||
| c-file-style: "gnu" | ||||
| End: | ||||
| */ | ||||
|  | ||||
| #include <config.h> | ||||
|  | ||||
| #include <stdio.h> | ||||
| #include <mntent.h> | ||||
|  | ||||
| #include <glibtop.h> | ||||
| #include <glibtop/mountlist.h> | ||||
| #include <glibtop/error.h> | ||||
|  | ||||
|  | ||||
| /* IgnoreList */ | ||||
|  | ||||
|  | ||||
| typedef struct | ||||
| { | ||||
|   GHashTable *table; | ||||
| } IgnoreList; | ||||
|  | ||||
|  | ||||
| static IgnoreList* | ||||
| ignore_list_new(void) | ||||
| { | ||||
|   IgnoreList* ig; | ||||
|   ig = g_new(IgnoreList, 1); | ||||
|   ig->table = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, NULL); | ||||
|   return ig; | ||||
| } | ||||
|  | ||||
|  | ||||
| static void | ||||
| ignore_list_delete(IgnoreList* ig) | ||||
| { | ||||
|   if (ig) { | ||||
|     g_hash_table_destroy(ig->table); | ||||
|     g_free(ig); | ||||
|   } | ||||
| } | ||||
|  | ||||
|  | ||||
| static void | ||||
| ignore_list_add(IgnoreList* ig, const char* fs) | ||||
| { | ||||
|   g_hash_table_insert(ig->table, g_strdup(fs), GINT_TO_POINTER(1)); | ||||
| } | ||||
|  | ||||
|  | ||||
| static gboolean | ||||
| ignore_list_has(IgnoreList* ig, const char* fs) | ||||
| { | ||||
|   gpointer data; | ||||
|   data = g_hash_table_lookup(ig->table, fs); | ||||
|   return data != NULL; | ||||
| } | ||||
|  | ||||
|  | ||||
| /* ~IgnoreList */ | ||||
|  | ||||
|  | ||||
| static gboolean | ||||
| ignore_fs(const char *fstype, IgnoreList** ig) | ||||
| { | ||||
|   if (!*ig) { | ||||
|     FILE* fs; | ||||
|     char line[128]; | ||||
|  | ||||
|     *ig = ignore_list_new(); | ||||
|  | ||||
|     if ((fs = fopen("/proc/filesystems", "r")) != NULL) { | ||||
|       while (fgets(line, sizeof line, fs)) { | ||||
| 	if (!strncmp(line, "nodev", 5)) { | ||||
| 	  char *type; | ||||
| 	  type = g_strstrip(line + 5); | ||||
| 	  ignore_list_add(*ig, type); | ||||
| 	} | ||||
|       } | ||||
|       fclose(fs); | ||||
|     } | ||||
|   } | ||||
|  | ||||
|   return ignore_list_has(*ig, fstype); | ||||
| } | ||||
|  | ||||
|  | ||||
| glibtop_mountentry * | ||||
| glibtop_get_mountlist_s(glibtop *server, glibtop_mountlist *buf, int all_fs) | ||||
| { | ||||
|   const struct mntent *mnt; | ||||
|   FILE *fp; | ||||
|   GArray* entries; | ||||
|   IgnoreList* ig = NULL; | ||||
|  | ||||
|   glibtop_init_r(&server, 0, 0); | ||||
|   memset(buf, 0, sizeof(glibtop_mountlist)); | ||||
|  | ||||
|   /* wild guess, preallocate 8 entries | ||||
|      on a desktop, almost everyone has / and a tmpfs for udev | ||||
|      if all_fs, there are also proc, sys, fuse, binfmt, etc */ | ||||
|   entries = g_array_sized_new(FALSE, FALSE, sizeof(glibtop_mountentry), 8); | ||||
|  | ||||
|   if (!(fp = setmntent(MOUNTED, "r"))) { | ||||
|       glibtop_warn_io_r(server, "Could not open %s", MOUNTED); | ||||
|       goto out; | ||||
|     } | ||||
|  | ||||
|   while ((mnt = getmntent(fp))) | ||||
|     { | ||||
|       glibtop_mountentry *me; | ||||
|       const char *devopt; | ||||
|       gsize len; | ||||
|  | ||||
|       if (!all_fs && ignore_fs(mnt->mnt_type, &ig)) | ||||
| 	continue; | ||||
|  | ||||
|       len = entries->len; | ||||
|       g_array_set_size(entries, len + 1); | ||||
|       me = &g_array_index(entries, glibtop_mountentry, len); | ||||
|  | ||||
|       g_strlcpy(me->devname, mnt->mnt_fsname, sizeof me->devname); | ||||
|       g_strlcpy(me->mountdir, mnt->mnt_dir, sizeof me->mountdir); | ||||
|       g_strlcpy(me->type, mnt->mnt_type, sizeof me->type); | ||||
|       devopt = strstr(mnt->mnt_opts, "dev="); | ||||
|       me->dev = (devopt ? strtoull(devopt + sizeof "dev=", NULL, 0) : (dev_t)-1); | ||||
|     } | ||||
|  | ||||
|     endmntent(fp); | ||||
|  | ||||
|  | ||||
|   out: | ||||
|     ignore_list_delete(ig); | ||||
|  | ||||
|     buf->size = sizeof(glibtop_mountentry); | ||||
|     buf->number = entries->len; | ||||
|     buf->total = buf->number * buf->size; | ||||
|     buf->flags = (1 << GLIBTOP_MOUNTLIST_SIZE) | ||||
|     | (1 << GLIBTOP_MOUNTLIST_NUMBER) | ||||
|     | (1 << GLIBTOP_MOUNTLIST_TOTAL); | ||||
|  | ||||
|   return (glibtop_mountentry*) g_array_free(entries, FALSE); | ||||
| } | ||||
| @@ -71,7 +71,7 @@ glibtop_get_proclist_s (glibtop *server, glibtop_proclist *buf, | ||||
| 	proc = opendir ("/proc"); | ||||
| 	if (!proc) return NULL; | ||||
|  | ||||
| 	if(stat("/proc", &statb)) return NULL; | ||||
| 	if(fstat(dirfd(proc), &statb) != 0) return NULL; | ||||
|  | ||||
| 	pids = g_array_sized_new(FALSE, FALSE, sizeof(pid_t), statb.st_nlink); | ||||
|  | ||||
|   | ||||
| @@ -36,7 +36,7 @@ | ||||
| #define SMAPS_FILE "/proc/%u/smaps" | ||||
|  | ||||
|  | ||||
| #define PROC_MAPS_FORMAT "%16llx-%16llx %4c %16llx %02hx:%02hx %llu%*[ ]%n" | ||||
| #define PROC_MAPS_FORMAT "%16" G_GINT64_MODIFIER "x-%16" G_GINT64_MODIFIER "x %4c %16" G_GINT64_MODIFIER "x %02hx:%02hx %" G_GINT64_MODIFIER "u%*[ ]%n" | ||||
|  | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_proc_map = | ||||
| @@ -66,49 +66,78 @@ _glibtop_init_proc_map_s (glibtop *server) | ||||
| /* Provides detailed information about a process. */ | ||||
|  | ||||
|  | ||||
| static void | ||||
| add_smaps(glibtop *server, FILE *smaps, glibtop_map_entry *entry) | ||||
|  | ||||
| struct smap_value { | ||||
| 	char name[16]; | ||||
| 	size_t name_len; | ||||
| 	ptrdiff_t offset; | ||||
| }; | ||||
|  | ||||
| static int | ||||
| compare(const void* a_key, const void* a_smap) | ||||
| { | ||||
| 	const char* key = a_key; | ||||
| 	const struct smap_value* smap = a_smap; | ||||
| 	return strncmp(key, smap->name, smap->name_len); | ||||
| } | ||||
|  | ||||
|  | ||||
| static gboolean | ||||
| is_smap_value(const char* s) | ||||
| { | ||||
| 	for ( ; *s; ++s) { | ||||
|  | ||||
| 		if (isspace(*s)) | ||||
| 			return FALSE; | ||||
|  | ||||
| 		if (*s == ':') | ||||
| 			return TRUE; | ||||
| 	} | ||||
|  | ||||
| 	return FALSE; | ||||
| } | ||||
|  | ||||
|  | ||||
| /* | ||||
|   Returns whether line is a 'value' line | ||||
|   and add if we know its meaning | ||||
| */ | ||||
| static gboolean | ||||
| parse_smaps(glibtop_map_entry *entry, const char* line) | ||||
| { | ||||
| #define SMAP_OFFSET(MEMBER) offsetof(glibtop_map_entry, MEMBER) | ||||
| #define STR_AND_LEN(X) (X), (sizeof X - 1) | ||||
|  | ||||
| 	struct smap_value { | ||||
| 		char name[15]; | ||||
| 		ptrdiff_t offset; | ||||
| 	}; | ||||
|  | ||||
| 	/* keep sorted */ | ||||
| 	const struct smap_value values[] = { | ||||
| 		{ "Size:",		SMAP_OFFSET(size) }, | ||||
| 		{ "Rss:",		SMAP_OFFSET(rss) }, | ||||
| 		{ "Shared_Clean:",	SMAP_OFFSET(shared_clean) }, | ||||
| 		{ "Shared_Dirty:",	SMAP_OFFSET(shared_dirty) }, | ||||
| 		{ "Private_Clean:",	SMAP_OFFSET(private_clean) }, | ||||
| 		{ "Private_Dirty:",	SMAP_OFFSET(private_dirty) } | ||||
| 		{ STR_AND_LEN("Private_Clean:"),	SMAP_OFFSET(private_clean) }, | ||||
| 		{ STR_AND_LEN("Private_Dirty:"),	SMAP_OFFSET(private_dirty) }, | ||||
| 		{ STR_AND_LEN("Rss:"),			SMAP_OFFSET(rss) }, | ||||
| 		{ STR_AND_LEN("Shared_Clean:"),		SMAP_OFFSET(shared_clean) }, | ||||
| 		{ STR_AND_LEN("Shared_Dirty:"),		SMAP_OFFSET(shared_dirty) }, | ||||
| 		{ STR_AND_LEN("Size:"),			SMAP_OFFSET(size) } | ||||
| 	}; | ||||
|  | ||||
| 	size_t i; | ||||
| #undef STR_AND_LEN | ||||
| #undef SMAP_OFFSET | ||||
|  | ||||
| 	for (i = 0; i < G_N_ELEMENTS(values); ++i) { | ||||
| 		char line[80]; | ||||
| 	struct smap_value* smap; | ||||
|  | ||||
| 	smap = bsearch(line, values, G_N_ELEMENTS(values), sizeof values[0], compare); | ||||
|  | ||||
| 	if (smap) { | ||||
| 		char *offset; | ||||
| 		guint64 *value; | ||||
|  | ||||
| 		if (!fgets(line, sizeof line, smaps) || !g_str_has_prefix(line, values[i].name)) { | ||||
| 			glibtop_warn_io_r(server, | ||||
| 					  "Could not read smaps value %s", | ||||
| 					  values[i].name); | ||||
| 			return; | ||||
| 		} | ||||
|  | ||||
| 		offset = (void*) entry; | ||||
| 		offset += values[i].offset; | ||||
| 		offset += smap->offset; | ||||
| 		value = (void*) offset; | ||||
|  | ||||
| 		*value = get_scaled(line, values[i].name); | ||||
| 		*value = get_scaled(line + smap->name_len, NULL); | ||||
| 		return TRUE; | ||||
| 	} | ||||
|  | ||||
| 	entry->flags |= _glibtop_sysdeps_map_entry_smaps; | ||||
|  | ||||
| #undef SMAP_OFFSET | ||||
| 	return is_smap_value(line); | ||||
| } | ||||
|  | ||||
|  | ||||
| @@ -150,7 +179,7 @@ glibtop_get_proc_map_s (glibtop *server, glibtop_proc_map *buf,	pid_t pid) | ||||
|  | ||||
| 	while(TRUE) | ||||
| 	{ | ||||
| 		unsigned long perm = 0; | ||||
| 		unsigned long perm; | ||||
| 		guint len; | ||||
| 		int line_end; | ||||
|  | ||||
| @@ -164,6 +193,8 @@ glibtop_get_proc_map_s (glibtop *server, glibtop_proc_map *buf,	pid_t pid) | ||||
| 		if (getline(&line, &line_size, maps) == -1) | ||||
| 			break; | ||||
|  | ||||
| 	new_entry_line: | ||||
|  | ||||
| 		if (sscanf(line, PROC_MAPS_FORMAT, | ||||
| 			   &start, &end, flags, &offset, | ||||
| 			   &dev_major, &dev_minor, &inode, &line_end) != 7) | ||||
| @@ -173,6 +204,7 @@ glibtop_get_proc_map_s (glibtop *server, glibtop_proc_map *buf,	pid_t pid) | ||||
| 		g_strstrip(filename); | ||||
|  | ||||
| 		/* Compute access permissions. */ | ||||
| 		perm = 0; | ||||
|  | ||||
| 		if (flags [0] == 'r') | ||||
| 			perm |= GLIBTOP_MAP_PERM_READ; | ||||
| @@ -205,11 +237,22 @@ glibtop_get_proc_map_s (glibtop *server, glibtop_proc_map *buf,	pid_t pid) | ||||
| 		entry->inode = inode; | ||||
| 		g_strlcpy(entry->filename, filename, sizeof entry->filename); | ||||
|  | ||||
| 		if (has_smaps) | ||||
| 			add_smaps(server, maps, entry); | ||||
| 		if (has_smaps) { | ||||
| 			ssize_t ret; | ||||
| 			entry->flags |= _glibtop_sysdeps_map_entry_smaps; | ||||
|  | ||||
| 			while ((ret = getline(&line, &line_size, maps)) != -1) { | ||||
| 				if (!parse_smaps(entry, line)) | ||||
| 					goto new_entry_line; | ||||
| 			} | ||||
|  | ||||
| 			if (ret == -1) | ||||
| 				goto eof; | ||||
| 		} | ||||
| 	} | ||||
|  | ||||
| eof: | ||||
|  | ||||
| 	free(line); | ||||
| 	fclose (maps); | ||||
|  | ||||
|   | ||||
| @@ -79,6 +79,9 @@ glibtop_get_proc_wd_s(glibtop *server, glibtop_proc_wd *buf, pid_t pid) | ||||
| 	if ((task = opendir(path)) != NULL) { | ||||
| 		struct dirent *sub; | ||||
| 		while ((sub = readdir(task)) != NULL) { | ||||
| 			/* task dirs have numeric name */ | ||||
| 			if (!isdigit(sub->d_name[0])) | ||||
| 				continue; | ||||
| 			g_snprintf(path, sizeof path, "/proc/%u/task/%s/cwd", pid, sub->d_name); | ||||
| 			if (safe_readlink(path, dir, sizeof dir) && !is_in(dirs, dir)) | ||||
| 				g_ptr_array_add(dirs, g_strdup(dir)); | ||||
|   | ||||
| @@ -1,7 +1,7 @@ | ||||
| /* Copyright (C) 1998-99 Martin Baulig | ||||
|    This file is part of LibGTop 1.0. | ||||
| /* Copyright (C) 2007 Henry Zhang | ||||
|    This file is part of LibGTop 2.20. | ||||
|  | ||||
|    Contributed by Martin Baulig <martin@home-of-linux.org>, October 1998. | ||||
|    Contributed by Henry Zhang <hua.zhang@sun.com>, October 2007.  | ||||
|  | ||||
|    LibGTop is free software; you can redistribute it and/or modify it | ||||
|    under the terms of the GNU General Public License as published by | ||||
| @@ -24,14 +24,163 @@ | ||||
| #include <glibtop/error.h> | ||||
| #include <glibtop/netload.h> | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_netload = 0; | ||||
| #include "glibtop_private.h" | ||||
|  | ||||
| #include <errno.h> | ||||
| #include <string.h> | ||||
| #include <kstat.h> | ||||
|  | ||||
| #include <sys/types.h> | ||||
| #include <sys/socket.h> | ||||
| #include <sys/ioctl.h> | ||||
| #include <sys/sockio.h> | ||||
|  | ||||
| #include <net/if.h> | ||||
|  | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_netload = | ||||
| (1L << GLIBTOP_NETLOAD_ERRORS_IN) + | ||||
| (1L << GLIBTOP_NETLOAD_ERRORS_OUT) + | ||||
| (1L << GLIBTOP_NETLOAD_COLLISIONS); | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_netload_data = | ||||
| (1L << GLIBTOP_NETLOAD_ADDRESS) + | ||||
| (1L << GLIBTOP_NETLOAD_SUBNET) + | ||||
| (1L << GLIBTOP_NETLOAD_MTU); | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_netload_bytes = | ||||
| (1L << GLIBTOP_NETLOAD_BYTES_IN) + | ||||
| (1L << GLIBTOP_NETLOAD_BYTES_OUT) + | ||||
| (1L << GLIBTOP_NETLOAD_BYTES_TOTAL); | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_netload_packets = | ||||
| (1L << GLIBTOP_NETLOAD_PACKETS_IN) + | ||||
| (1L << GLIBTOP_NETLOAD_PACKETS_OUT) + | ||||
| (1L << GLIBTOP_NETLOAD_PACKETS_TOTAL); | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_netload_total = | ||||
| (1L << GLIBTOP_NETLOAD_PACKETS_TOTAL) + | ||||
| (1L << GLIBTOP_NETLOAD_BYTES_TOTAL); | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_netload_in = | ||||
| (1L << GLIBTOP_NETLOAD_PACKETS_TOTAL) + | ||||
| (1L << GLIBTOP_NETLOAD_BYTES_TOTAL) + | ||||
| (1L << GLIBTOP_NETLOAD_PACKETS_IN) + | ||||
| (1L << GLIBTOP_NETLOAD_BYTES_IN); | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_netload_out = | ||||
| (1L << GLIBTOP_NETLOAD_PACKETS_TOTAL) + | ||||
| (1L << GLIBTOP_NETLOAD_BYTES_TOTAL) + | ||||
| (1L << GLIBTOP_NETLOAD_PACKETS_OUT) + | ||||
| (1L << GLIBTOP_NETLOAD_BYTES_OUT); | ||||
|  | ||||
| static const unsigned long _glibtop_sysdeps_netload_6 = | ||||
| (1L << GLIBTOP_NETLOAD_ADDRESS6) + | ||||
| (1L << GLIBTOP_NETLOAD_PREFIX6) + | ||||
| (1L << GLIBTOP_NETLOAD_SCOPE6); | ||||
|  | ||||
| /* Init function. */ | ||||
|  | ||||
| void | ||||
| _glibtop_init_netload_s (glibtop *server) | ||||
| { | ||||
| 	server->sysdeps.netload = _glibtop_sysdeps_netload; | ||||
|         server->sysdeps.netload = _glibtop_sysdeps_netload | | ||||
| 	_glibtop_sysdeps_netload_bytes | | ||||
| 	_glibtop_sysdeps_netload_packets; | ||||
| } | ||||
|  | ||||
| static int | ||||
| solaris_stats(glibtop *server, | ||||
| 		glibtop_netload *buf, | ||||
| 		const char *interface) | ||||
| { | ||||
| 	char	*name = interface; | ||||
| 	char	*module; | ||||
| 	char	*ptr; | ||||
|     	kstat_ctl_t * const kctl = server->machine.kc; | ||||
| 	kstat_t			*ksp; | ||||
| 	kstat_named_t		*kdata; | ||||
| 	int have_bytes = 1; | ||||
|  | ||||
| 	/* | ||||
| 	 *  chop off the trailing interface | ||||
| 	 */ | ||||
| 	module = strdup( name ); | ||||
| 	ptr = module + strlen( module ) - 1; | ||||
| 	while( (ptr > module) && isdigit( (int) *ptr ) ) { | ||||
| 		*ptr = '\0'; | ||||
| 		ptr--; | ||||
| 	} | ||||
|  | ||||
| 	/* | ||||
| 	 *  get a kstat handle and update the user's kstat chain | ||||
| 	 */ | ||||
| 	if( kctl == NULL ){ | ||||
| 		glibtop_warn_io_r (server, "kstat_open ()"); | ||||
| 		free( module ); | ||||
| 		return( 0 ); | ||||
| 	} | ||||
| 	while( kstat_chain_update( kctl ) != 0 ) | ||||
| 		; | ||||
|  | ||||
| 	/* | ||||
| 	 *  traverse the kstat chain | ||||
| 	 *  to find the appropriate statistics | ||||
| 	 */ | ||||
| 	if( (ksp = kstat_lookup( kctl, | ||||
| 			module, 0, name )) == NULL ) { | ||||
| 		free( module ); | ||||
| 		return( 0 ); | ||||
| 	} | ||||
| 	if( kstat_read( kctl, ksp, NULL ) == -1 ) { | ||||
| 		free( module ); | ||||
| 		return( 0 ); | ||||
| 	} | ||||
| 	free( module ); | ||||
|  | ||||
| 	/* | ||||
| 	 *  lookup & store the data | ||||
| 	 */ | ||||
| 	kdata = (kstat_named_t *) kstat_data_lookup( ksp, "ipackets" ); | ||||
| 	if( kdata != NULL ) { | ||||
| 		buf->packets_in= kdata->value.ul; | ||||
| 	} | ||||
| 	kdata = (kstat_named_t *) kstat_data_lookup( ksp, "opackets" ); | ||||
| 	if( kdata != NULL ) { | ||||
| 		buf->packets_out = kdata->value.ul; | ||||
| 	} | ||||
| 	kdata = (kstat_named_t *) kstat_data_lookup( ksp, "rbytes" ); | ||||
| 	if( kdata != NULL ) { | ||||
| 		buf->bytes_in =kdata->value.ul; | ||||
| 	} | ||||
| 	kdata = (kstat_named_t *) kstat_data_lookup( ksp, "obytes" ); | ||||
| 	if( kdata != NULL ) { | ||||
| 		buf->bytes_out =kdata->value.ul; | ||||
| 	} | ||||
| 	kdata = (kstat_named_t *) kstat_data_lookup( ksp, "ierrors" ); | ||||
| 	if( kdata != NULL ) { | ||||
| 		buf->errors_in = kdata->value.ul; | ||||
| 	} | ||||
| 	kdata = (kstat_named_t *) kstat_data_lookup( ksp, "oerrors" ); | ||||
| 	if( kdata != NULL ) { | ||||
| 		buf->errors_out = kdata->value.ul; | ||||
| 	} | ||||
| 	kdata = (kstat_named_t *) kstat_data_lookup( ksp, "collisions" ); | ||||
| 	if( kdata != NULL ) { | ||||
| 		buf->collisions = kdata->value.ul; | ||||
| 	} | ||||
| 	 | ||||
| 	/* Compute total valules. */ | ||||
|  | ||||
| 	buf->bytes_total = buf->bytes_in + buf->bytes_out; | ||||
| 	buf->packets_total = buf->packets_in + buf->packets_out; | ||||
| 	buf->errors_total = buf->errors_in + buf->errors_out; | ||||
| 	/* And now the flags. */ | ||||
| 	buf->flags |= _glibtop_sysdeps_netload; | ||||
| 	buf->flags |= _glibtop_sysdeps_netload_bytes; | ||||
| 	buf->flags |= _glibtop_sysdeps_netload_packets; | ||||
| 	     | ||||
| 	/* finished */ | ||||
| } | ||||
|  | ||||
| /* Provides network statistics. */ | ||||
| @@ -40,5 +189,69 @@ void | ||||
| glibtop_get_netload_s (glibtop *server, glibtop_netload *buf, | ||||
| 		       const char *interface) | ||||
| { | ||||
| 	memset (buf, 0, sizeof (glibtop_netload)); | ||||
|    int skfd; | ||||
|     memset (buf, 0, sizeof (glibtop_netload)); | ||||
|  | ||||
|     /* set flag */ | ||||
|     skfd = socket (PF_INET, SOCK_DGRAM, 0); | ||||
|     if (skfd) { | ||||
| 	struct ifreq ifr; | ||||
|  | ||||
| 	g_strlcpy (ifr.ifr_name, interface, sizeof ifr.ifr_name); | ||||
| 	if (ioctl (skfd, SIOCGIFFLAGS, &ifr) >= 0) { | ||||
| 	    const unsigned long long flags = ifr.ifr_flags; | ||||
|  | ||||
| 	    buf->flags |= (1L << GLIBTOP_NETLOAD_IF_FLAGS); | ||||
|  | ||||
| 	    if (flags & IFF_UP) | ||||
| 		buf->if_flags |= (1L << GLIBTOP_IF_FLAGS_UP); | ||||
|  | ||||
| 	    if (flags & IFF_BROADCAST) | ||||
| 		buf->if_flags |= (1L << GLIBTOP_IF_FLAGS_BROADCAST); | ||||
|  | ||||
| 	    if (flags & IFF_DEBUG) | ||||
| 		buf->if_flags |= (1L << GLIBTOP_IF_FLAGS_DEBUG); | ||||
|  | ||||
| 	    if (flags & IFF_LOOPBACK) | ||||
| 		buf->if_flags |= (1L << GLIBTOP_IF_FLAGS_LOOPBACK); | ||||
|  | ||||
| 	    if (flags & IFF_POINTOPOINT) | ||||
| 		buf->if_flags |= (1L << GLIBTOP_IF_FLAGS_POINTOPOINT); | ||||
|  | ||||
| 	    if (flags & IFF_RUNNING) | ||||
| 		buf->if_flags |= (1L << GLIBTOP_IF_FLAGS_RUNNING); | ||||
|  | ||||
| 	    if (flags & IFF_NOARP) | ||||
| 		buf->if_flags |= (1L << GLIBTOP_IF_FLAGS_NOARP); | ||||
|  | ||||
| 	    if (flags & IFF_PROMISC) | ||||
| 		buf->if_flags |= (1L << GLIBTOP_IF_FLAGS_PROMISC); | ||||
|  | ||||
| 	    if (flags & IFF_ALLMULTI) | ||||
| 		buf->if_flags |= (1L << GLIBTOP_IF_FLAGS_ALLMULTI); | ||||
|  | ||||
| 	    if (flags & IFF_MULTICAST) | ||||
| 		buf->if_flags |= (1L << GLIBTOP_IF_FLAGS_MULTICAST); | ||||
| 	    } | ||||
|  | ||||
| 	g_strlcpy (ifr.ifr_name, interface, sizeof ifr.ifr_name); | ||||
| 	if (!ioctl (skfd, SIOCGIFADDR, &ifr)) { | ||||
| 	    buf->address = ((struct sockaddr_in *) &ifr.ifr_addr)->sin_addr.s_addr; | ||||
| 	    buf->flags |= (1L << GLIBTOP_NETLOAD_ADDRESS); | ||||
| 	} | ||||
|  | ||||
| 	g_strlcpy (ifr.ifr_name, interface, sizeof ifr.ifr_name); | ||||
| 	if (!ioctl (skfd, SIOCGIFNETMASK, &ifr)) { | ||||
| 	    buf->subnet = ((struct sockaddr_in *) &ifr.ifr_addr)->sin_addr.s_addr; | ||||
| 	    buf->flags |= (1L << GLIBTOP_NETLOAD_SUBNET); | ||||
| 	} | ||||
| 	close (skfd); | ||||
|     } | ||||
|  | ||||
|     /* | ||||
|      * Statistics | ||||
|      */ | ||||
|       | ||||
|     solaris_stats(server, buf, interface); | ||||
|  | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user