Einloggen
[c] [test] [fefe]

/c/ – Pufferüberlauf


Neuen Faden erstellen

(≤ 4)



[0] [1] [2] [3] [4]

  • [l] Quellcodeklebrig? Frickelfelix Wed, 02 Jan 2019 23:05:00 GMT Nr. 5853 Klebrig
    PNG 623×714 235.4k
    Schraubt hier jemand außer Zuse am DC-Quelltext?

    Die Projektziele haben mir gefallen und obwohl Portabilität nicht mit aufgeführt wird und ausdrücklich Linux gefordert, habe ich mal versucht, es auf meinem LSD zum laufen zu bekommen. Auf die namensgebende Diäten-Libc kann man verzichten, libowfat und Abhängigkeiten sind als Paket vorhanden.

    Kleinere Unterschiede , wie dass
    * sich include- und lib-Pfade unterscheiden,
    * BSD-gcc alt ist und z.B. -mmititage-rop nicht unterstützt,
    * einige Bibos in BSD nicht existieren, oder dass
    * Funktionsprototypen für malloc und alloca nicht in eigenen Header-Dateien liegen,

    lassen sich trivial lösen. Gestoppt habe ich jetzt, bei fallocate (z.B. db.c:398). Vielleicht kann man es einfach ein #ifdef _GNU_SOURCE eingefassen, aber was war hier die Absicht des Verfassers?

    Was hält Felix von einem Klebefaden für Quellcodefrickler? Wenn man auf Gitgud schaut, könnte das Projekt Aufmerksamkeit und Zuarbeiter gebrauchen (issues == mergereqs == 0).
22 Antworten nicht angezeigt.
  • [l] Zuse ## Admin Tue, 30 Apr 2019 10:20:45 GMT Nr. 10185
    >>10176
    Gut aufgepasst, der Code machte auf jeden Fall keinen Sinn.

    Eigentlich müssen die Seiten sowieso nur nach einem Crash neu gemappt werden (im laufenden Betrieb wächst die Datenbank sonst einfach in den anonym gemappten Bereich hinein), dann aber immer, unabhängig davon, ob sich die Größe geändert hat. Ich habe das mal behoben. Ich habe den Code länger nicht mehr angeschaut, aber glaube es stimmt so.

    Es sind eh im Hintergrund Änderungen am Journal im Gange, ist aber alles noch experimentell.

    Vielen Dank für den Hinweis!
  • [l] Frickel- Felix Sat, 01 Jun 2019 12:15:39 GMT Nr. 11247
    Hai, Konni!

    Hab mal wieder gebaut und mit dem aktuellen Kot läuft die Kiste auch auf BSD.

    diff --git a/src/dietchan/src/config.h b/src/dietchan/src/config.h
    index 9f64c30..4c3af42 100644
    --- a/src/dietchan/src/config.h
    +++ b/src/dietchan/src/config.h
    @@ -75,5 +75,6 @@
     #define MAX_GET_PARAM_LENGTH           2048
     #define MAX_POST_PARAM_LENGTH         16384
     #define MAX_MULTIPART_BOUNDARY_LENGTH   128
    +#define NEED_CAPTCHA                      0
     
     #endif // CONFIG_H
    diff --git a/src/dietchan/src/dietchan.c b/src/dietchan/src/dietchan.c
    index 65be601..64ce7ed 100644
    --- a/src/dietchan/src/dietchan.c
    +++ b/src/dietchan/src/dietchan.c
    @@ -380,7 +380,7 @@ int main(int argc, char* argv[])
     	mkdir(DOC_ROOT "/uploads", 0755);
     	mkdir(DOC_ROOT "/captchas", 0755);
     	// Start generating captchas
    -	generate_captchas();
    +	if (NEED_CAPTCHA) generate_captchas();
     
     	// Main loop
     	while (1) {
    

    Eigentlich sollte das nur auskommentiert werden, aber wir haben ja schon eine config.h.

    diff --git a/src/dietchan/src/http.c b/src/dietchan/src/http.c
    index c141d33..f82f55f 100644
    --- a/src/dietchan/src/http.c
    +++ b/src/dietchan/src/http.c
    @@ -1,6 +1,8 @@
     #include "http.h"
     
    +#ifdef __GLIBC__
     #include <alloca.h>
    +#endif
     #include <string.h>
     #include <stdlib.h>
     #include <ctype.h>
    

    Anscheinend ist alloca.h GLIBC-spezifisch und ich habe überlegt, wie man das umsetzen kann. Wörksformi(tm), aber jetzt fange ich an, den Kot mit ifdefs zu verschandeln. Ich habe mal gelesen, dass das schöner geht, kann mich aber nicht daran erinnern wie.

    diff --git a/src/dietchan/src/import.c b/src/dietchan/src/import.c
    index eab0a6f..a0ca7a2 100644
    --- a/src/dietchan/src/import.c
    +++ b/src/dietchan/src/import.c
    @@ -1,6 +1,5 @@
     #include "import.h"
     
    -#include <malloc.h>
     #include <unistd.h>
     #include <ctype.h>
     #include <stdio.h>
    

    Einbinden von malloc.h ist angeblich auch auf Linux mittlerweile unerwünscht, also habe ich es einfach ausgelassen.

    diff --git a/src/dietchan/src/pages/post.c b/src/dietchan/src/pages/post.c
    index 2971796..16acadc 100644
    --- a/src/dietchan/src/pages/post.c
    +++ b/src/dietchan/src/pages/post.c
    @@ -1,9 +1,8 @@
    -#define _BSD_SOURCE 1
    +#define _BSD_SOURCE 1
     #define _GNU_SOURCE 1
     #define _XOPEN_SOURCE 1
     #include "post.h"
     
    -#include "malloc.h"
     #include <stdio.h>
     #include <sys/socket.h>
     #include <sys/stat.h>
    

    In post.c hat sich ein BOMЖ verirrt, an dem sich gcc verschluckt.

    Das "malloc.h" habe ich aus demselben Grund ausgelassen, warum ist es hier allerdings in ""?

    diff --git a/src/dietchan/src/util.c b/src/dietchan/src/util.c
    index 3802858..b6c78ab 100644
    --- a/src/dietchan/src/util.c
    +++ b/src/dietchan/src/util.c
    @@ -1,11 +1,15 @@
     #include "util.h"
     
     #include <ctype.h>
    +#ifdef __GLIBC__
     #include <alloca.h>
    +#endif
     #include <libowfat/str.h>
     #include <libowfat/fmt.h>
     #include <libowfat/scan.h>
    +#ifndef arc4random
     #include "arc4random.h"
    +#endif
     
     size_t byte_str(const char *haystack, size_t haystack_length, const char *needle)
     {
    

    Keine Ahnung, ob das so funktioniert. In BSD wird arc4random in der stdlib.h definiert, also sollte er die eigene Definition nicht einbinden.
  • [l] Zuse ## Admin Sat, 01 Jun 2019 22:51:18 GMT Nr. 11254
    >>11247
    Danke erstmal. Sieht soweit gut aus, das mit den Captchas könnte aber Probleme geben, wenn man sie zur Laufzeit aktiviert und NEED_CAPTCHAS nicht gesetzt ist. Ich denke, die richtige Lösung wäre, dass die Captchas generiert werden, wenn sie zum ersten mal aktiviert werden.
  • [l] Zuse ## Admin Fri, 14 Jun 2019 04:18:25 GMT Nr. 11668
    Kurzes Update, ich habe erstmal diese Header-Sachen da gefixt. Es hat sich außerdem rausgestellt, dass auch dietlibc mittlerweile eine arc4random-Implementierung mitliefert, sodass ich den Kot komplett entfernen konnte. Das ist immer erfreulich.

  • [l] Regeln Effe ## Admin Sun, 27 May 2018 11:57:26 GMT Nr. 2 Klebrig Geschlossen
    JPG 900×1200 134.9k
    Kurze Durchsage.

    0. Nichts illegales (in den USA oder in der EU)
    1. Bitte auch keinen Grenzwertscheiß
  • [l] Effe ## Admin Sun, 27 May 2018 15:21:15 GMT Nr. 6
    Unterstützte Formate: JPEG, PNG, GIF, WEBM, PDF

    Maximal 10 MB pro Datei.

  • [l] Felix Tue, 13 Aug 2019 08:01:25 GMT Nr. 13818
    WEBM 448×252 1:29 9.2M
    Felix ist gerade über den Wikipedia-Eintrag zum Video Entführungen von Cleveland, Ohio gestolpert.

    Wie kann man eigentlich nachweisen, dass man fünf Fehlgeburten gehabt hat? Haben sie die ausgeschabt und mittels DNS fünf verschiedene Überbleibsel feststellen können oder wie ginge das?

    Sicher, in dem Fall waren die anderen Anklagepunkte schon erdrückend und der Angeklagte wird eher vorher eingeknickt sein und hat denn Rest nur mit abgenickt. Mich interessiert trotzdem die tatsächliche Nachweisbarkeit. Haben wir hier einen Arzt?

    Auch schön: "Er soll sich in seiner Zelle erhängt haben". Mal gucken, was Fefe zu solchen Todesfällen schreibt.

  • [l] Felix Sun, 11 Aug 2019 17:04:55 GMT Nr. 13785
    JPG 410×544 40.1k
    Oh Hi, bin ich spät zur Partei?

  • [l] Politik Felix Thu, 27 Jun 2019 17:44:22 GMT Nr. 12306
    JPG 1280×720 1.3M
    Ist hier Politik erlaubt?
  • [l] Zuse ## Admin Fri, 28 Jun 2019 11:28:20 GMT Nr. 12316
    >>12306
    Eigentlich bietet /fefe/ schon genug Stoff für politische Diskussionen.
  • [l] Felix Sun, 11 Aug 2019 16:33:48 GMT Nr. 13784
    LEL

  • [l] mal schaun Felix Thu, 04 Jul 2019 13:44:14 GMT Nr. 12567
    PNG 759×658 590.5k
    nur ein test. jemand hat dietchan auf /g/ verlinkt.
  • [l] Felix Thu, 04 Jul 2019 13:45:02 GMT Nr. 12568
    wirklich überzeugend ist das jetzt nicht gerade :^)
  • [l] Felix Thu, 04 Jul 2019 13:45:23 GMT Nr. 12569
    läuft aber relativ flott alles

  • [l] BENIS Felix Thu, 29 Nov 2018 12:04:33 GMT Nr. 4829
    JPG 778×812 127.6k
    :DDDDDDDDDD
1 Antwort nicht angezeigt.
  • [l] Felix Thu, 29 Nov 2018 12:22:43 GMT Nr. 4841
    Hello am 48 year man from somalia. Sorry for my bed england. I selled my wife for internet connection so I can watch Herbert Gonenmeyr vides.
  • [l] hallo Felix Sun, 06 Jan 2019 20:21:30 GMT Nr. 5945
    i dont speak germanian
    ik spreek alleen maar nederlands
    hahaahhaahhahahahahhahahaha

  • [l] ++ BRECHEND ++ Felix Thu, 29 Nov 2018 13:08:31 GMT Nr. 4882
    PNG 360×594 250.5k
    Kohlchan geht wieder!!!
1 Antwort nicht angezeigt.
  • [l] Felix Mon, 01 Apr 2019 03:37:16 GMT Nr. 9160
    Falls du gerade das Gegenteil empfinden solltest werter Felix, so nutze doch einfach den Lieferanteneingang.
  • [l] Felix Fri, 17 May 2019 18:09:46 GMT Nr. 10706
    PNG 380×380 103.6k
    Das war wohl nix.
  • [l] Berthold Wed, 12 Jun 2019 11:38:25 GMT Nr. 11624
    JPG 500×500 46.3k
    Nichts geht.
    Absolut gar nichts.
    Niemals!

  • [l] Felix Sun, 02 Jun 2019 00:20:28 GMT Nr. 11256
    PNG 149×180 22.3k
    MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK
    MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK
    MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK
    MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK
    MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK
    MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK MEIN SACK

  • [l] Antitrollmaßnahme Genervter Felix Mon, 01 Apr 2019 20:01:07 GMT Nr. 9204
    GIF 2×2 35
    Zuse, bitte sperr doch die Fadenerstellung auf /fefe/
3 Antworten nicht angezeigt.
  • [l] nicht mehr genervter Felix Mon, 01 Apr 2019 21:32:01 GMT Nr. 9210
    >>9209

    Mein Name ist Zufall, Rainer Zufall.

    Eine vielleicht etwas extreme Maßnahme könnte noch sein, IPs, die von kohlchan (referrer) kommen, am POSTen zu hindern. hab mich nicht damit beschäftigt, aber vielleicht kann sowas sogar nginx bereits.
  • [l] Zuse ## Admin Mon, 01 Apr 2019 21:46:05 GMT Nr. 9211
    >>9210
    Dietchan ist ein inkludistisches Brett.
  • [l] Felix Tue, 02 Apr 2019 14:00:12 GMT Nr. 9237
    >>9210
    Kohlchan verschickt keine Referrer:

    >referrer-policy: no-referrer
  • [l] Felix Tue, 16 Apr 2019 08:54:59 GMT Nr. 9768 SÄGE
    >>9210
    >kein technisches Verständnis
    >dummer Plan
    >Kohlverhetzung
    Nicht anders erwartet.


[0] [1] [2] [3] [4]
[c] [test] [fefe]