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] 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] 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] ++ 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.

  • [l] Reversi is ded Sun, 24 Mar 2019 11:40:02 GMT Nr. 8759
    It just says "disconnected".

    Also please implement a chat and spectate function.

    Thanks!
2 Antworten nicht angezeigt.
  • [l] Felix ## Admin Sun, 24 Mar 2019 14:37:41 GMT Nr. 8772
    Thanks for the report. The server just stopped accepting connections somehow. I have restarted it.

    >Also please implement a chat and spectate function.
    I plan to do that when I get around to it.
  • [l] Felix Mon, 25 Mar 2019 16:57:42 GMT Nr. 8835
    I'll post it here so as to not spam the catalog. Please put in more US flags, the wait is too long for us Ameribros. I would recommend CSA (Louisiana, Arkansas, Tennessee, Mississippi, Alabama, Georgia, South Carolina, North Carolina, Virginia (60M population)), New York (20M population), Florida (20M population), New England (Connecticut, Rhode Island, Massachusetts, Vermont, New Hampshire, Maine (15M population)), and California (40M population). This would leave the rest of the US with only 125 million instead of 280 million like we have now.
  • [l] Felix Wed, 27 Mar 2019 22:41:50 GMT Nr. 8994 SÄGE
    bitte worum geht es hier!? und seit wann wird hier nichtdeutsch gesprochen!?
  • [l] Felix Thu, 28 Mar 2019 17:38:40 GMT Nr. 9034
    >>8994
    reversi.dietchan.org


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