smit oder smity wurde mir grad zugerufen, bin aber zu faul selber auf einer AIX einzuloggen.
Beiträge von davewood
-
-
Und zwar gibt mir die default config vom ubuntu package für /proc folgende config
Code
Alles anzeigen# # Critical devices # ( rulename = "Devices & Kernel information", severity = $(SIG_HI), ) { /dev -> $(Device) ; /proc -> $(Device) ; }
beim --check kommt dann folgendes im report vor.
Zitat
1. File system error.
Filename: /proc/27158/fd/3
No such file or directory
2. File system error.
Filename: /proc/27158/fdinfo/3
No such file or directory
3. File system error.
Filename: /proc/27158/task/27158/fd/3
No such file or directory
4. File system error.
Filename: /proc/27158/task/27158/fdinfo/3
No such file or directoryWie konfiguriert man sinnvollerweise, ganz auslassen dass proc Verzeichznis oder die Errormeldungen gekonnt ignorieren?
Und wenn ich dann die tripwire db updaten möchte bekomme ich folgende Meldung.
Zitat
Interactive Update failed.
### Error: Report file could not be parsed. Report may be corrupt.
### Exiting...
ps: Update failure lässt sich lösen indem man dem tripwire --update Befehl ein LC_ALL=C voranstellt.Ubuntu 7.10
Tripwire(R) 2.3.1.2 -
lshw gibts dann auch noch
-
a) ich frag mich was ein einsames sterndl vor dem t ueberhaupt tut. Der Code ist nu teilweise von mir und diese Zeile hab nicht ich geschrieben.
b) selbst wenn ich das Sterndl wegtue hab ich diesselbe Compilerwarnung
ps: gott bin ich deppert, hab das falsche sterndl weggetan, frage a steht aber noch
pps: gott bin ich noch deppertert, hab das uebersehenCodeint ndo2db_db_get_latest_data_time(ndo2db_idi *idi, char *table_name, char *field_name, unsigned long *t){
Danke Plantschkuh, freu mich immer sehr ueber deine Hilfe bin halt verkatert und schon 10h im Dienst :p
*a) natürlich dereferenzieren, ich dachte schon das *t steht für "void *t"
*b) auch nur weil ichs an der falschen stelle gelöscht habe. -
Code
776: *t=(time_t)0L; (...) 809: #ifdef USE_ORACLE 810: idi->dbinfo.oracle_result=ora_oci_store_result(); 811: if((idi->dbinfo.oracle_row=ora_oci_fetch_row(idi->dbinfo.oracle_result))!=NULL){ 812: t = *(unsigned long *)idi->dbinfo.oracle_row[0]; 813: } 814: ora_oci_free_result(idi->dbinfo.oracle_result); 815: idi->dbinfo.oracle_result=NULL; 816: #endif
Zitat
gcc -O3 -g3 -ggdb3 -W -Wall -pedantic -DHAVE_CONFIG_H -I/home/nagios/ndoutils-1.4b7-oracle/liboci/lib/oracle_instantclient_10_2-64/include -I../liboci/include -c -o db.o db.c
db.c: In function ‘ndo2db_db_connect’:
db.c:202: warning: unused variable ‘connect_string’
db.c: In function ‘ndo2db_db_hello’:
db.c:322: warning: implicit declaration of function ‘asprintf’
db.c:535:17: warning: multi-character character constant
db.c: In function ‘ndo2db_db_escape_string’:
db.c:535: warning: overflow in implicit constant conversion
db.c: In function ‘ndo2db_db_query’:
db.c:625: warning: implicit declaration of function ‘ndo2db_log_debug_info’
db.c: In function ‘ndo2db_handle_db_error’:
db.c:730: warning: implicit declaration of function ‘ora_oci_ping’
db.c:697: warning: unused parameter ‘query_result’
db.c: In function ‘ndo2db_db_get_latest_data_time’:
db.c:812: warning: assignment makes pointer from integer without a castZeile 776 verwirrt mich grad selber ein wenig.
-
hmm... aber ich dereferenziere den pointer bevor ich ihn an value zuweise.
-
Ich hab ne Methode die eine row einer Datenbank-Tabelle returniert.
Da ich nicht weiß aus welchen Datentypen sich die Tabelle zusammensetzt gebe ich einen Pointer auf ein Array Retour (genauer gesagt einen void **)
Wenn ich diese Funktion dann verwende muss zuerst das Arrayelement ausgewählt und dieses dann auf den korrekten Datentyp gecasted werden. Dann nur noch den Pointer dereferenzieren und schon hat man den Value.
Jetzt schreit aber der Compiler:
Jemand nen Plan?
-
Gegen HP spricht glaub ich dass sie in der Regel nicht sehr leise sind.
Nicht ungeprüft glaub was ich schreib das sind nur die Erfahrungen die ich in ein paar Reviews gelesen habe.
-
T61p mit WUXGA, here i come!
-
Der Fehler lag am -shared welches der patch eingebaut hat.
Mag mir jemand erklaeren warum?
Zitat
-shared
Produce a shared object which can then be linked with other objects to form an executable. Not all systems support this option. For predictable results, you
must also specify the same set of options that were used to generate code (-fpic, -fPIC, or model suboptions) when you specify this option.[1] -
erm
ja da fehlen noch total viele linkerflags. hab ich erst jetzt gesehen.
entweder patch inkorrekt oder ich hab einen mist beim applien vom patch gedreht.
-
Code
Alles anzeigen$ gdb ./sample GNU gdb 6.6-debian This GDB was configured as "i486-linux-gnu"... Using host libthread_db library "/lib/tls/i686/cmov/libthread_db.so.1". (gdb) run Starting program: /home/david/ndoutils-1.4b7-oracle/liboci/src/sample Program received signal SIGSEGV, Segmentation fault. 0x80000f06 in __do_global_dtors_aux () (gdb) bt #0 0x80000f06 in __do_global_dtors_aux () (gdb)
-
Hier die Kompilier- und Linkanweisungen falls das was bringen sollte.
Werd mich gleich mal an Sauzachns Tipp wagen
Codedavid@pcdt:~/ndoutils-1.4b7-oracle/liboci/src$ make gcc -g -O2 -fPIC -I/home/david/ndoutils-1.4b7-oracle/liboci/lib/oracle_instantclient_10_2-32/include -I../../liboci/include -DHAVE_CONFIG_H -I../../include -I../../include -I../../liboci/include -DHAVE_CONFIG_H -I../../include -I../../include -I../../liboci/include -c -o sample.o sample.c gcc -g -O2 -fPIC -I/home/david/ndoutils-1.4b7-oracle/liboci/lib/oracle_instantclient_10_2-32/include -I../../liboci/include -DHAVE_CONFIG_H -I../../include -I../../include -I../../liboci/include -DHAVE_CONFIG_H -I../../include -I../../include -I../../liboci/include -c -o liboci.o liboci.c ar rcs liboci.a liboci.o ranlib liboci.a gcc -shared -L/home/david/ndoutils-1.4b7-oracle/liboci/lib/oracle_instantclient_10_2-32/lib -L../../liboci/src sample.o liboci.a -o sample
die C und CPP Flags sind doppelt gemoppelt, komisch.
-
ein fflush(NULL) hab ich bereits gemacht bevor ich das posting schrieb.
wenn der Parameter NULL ist werden alle offenen Dateideskriptoren geflushed.
gdb werd ich mir wohl endlich anschaun muessen =)
Hab ebenfalls Ubuntu am rennen btw.
der Source is frisch ausm SVN ausgecheckt, patch drüberlaufen lassen, autoconf und dann make, also nix mit Dateileichen.
Kann evt die Reihenfolge in der die libs an den Linker übergeben werden einen Segfault zur Folge habe?
-
> ./sample
> Segmentation fault (core dumped)Und dass obwohl ich als allererstes Statement ein printf("debug\n") habe.
Wie geh ich denn am gscheitesten vor das Problem zu finden. Wohin schreibt er den coredump, im aktuellen working directory hab ich ihn nicht gefunden. Anfangen könnte ich allerdings auch nicht viel damit. =)
Ich hab naemlich ein Patchfile bekommen dass im autoconf einiges umgestellt hat, im Source allerdings praktisch nichts. Vorher gings, nun bekomm ich den segfault.
Über Hilfe bin ich sehr dankbar, weil meine Augen brennen schon vom reinstarren in den Monitor.
-
Vielleicht is der UNIVIE ZID fleißiger als der TU SZID in dieser Hinsicht.
-
http://www.zdnet.de/news/tkomm/0,39023151,39159049,00.htm
ZitatMiro gibt Videos im MPEG-, Quicktime-, AVI-, DivX-, Windows-Media- und Flash-Format wieder. Die Vollbild-Wiedergabe auch von High-Definition-Videos wird unterstützt. Dazu kommen Verwaltungsfunktionen sowohl für die Videosammlung auf dem eigenen PC als auch für Online-Quellen. Zum Funktionsumfang gehört ein Führer für über 2700 kostenlose Online-Video-Channels. Auch Video-RSS-Feeds inklusive Suchfunktionen werden unterstützt.
-
Danke für den Input.
Kann man meine Lösung mit casts nun als halbwegs sauber betrachten?
-
Ichs habs nun mit entsprechenden casts gelöst, aber ich frag mich schno grad was das genau bewirkt.
Evt mags ja wer erklären, ich schaffs heut zumindest nimmer das nachzuschaun weil mir nach 8h Computerarbeit nun bereits die Augen a bissal bluten.
-
Aber ist das gscheit?
Das sowas die Warnings wegbringt is mir klar, aber ob es das richtige im Code tut weiß ich nicht.
Auf den Punkt gebracht würd ich sagen dass gcc aus "bla bla bla" ein char array macht und die library die ich verwende (Oracles OCI Library) dafür den Typ unsigned char verwendet.