Upgrade to Pro — share decks privately, control downloads, hide ads and more …

PHPのマニュアルにないことをしてphp-srcへバグ報告をした

 PHPのマニュアルにないことをしてphp-srcへバグ報告をした

マニュアルにないことをするとどうなるのか、どうなったのか、
そしてSegfaultが発生してバグを報告したという内容を共有します。

てきめん tekimen

March 31, 2019
Tweet

More Decks by てきめん tekimen

Other Decks in Programming

Transcript

  1. ༨ஊͰ͕͢ ݹ͍1)1 ʙ Ͱ͸ TUSMFO BSSBZ ΍TUSMFO OFXTUE$MBTT  ͰJOU͕ฦΔ

    l"SSBZz΍l0CKFDUzͱ͍͏จࣈྻʹม׵͞ΕͯҾ਺ͱͳΔ ˠTUSMFO l"SSBZz TUSMFO l0CKFDUz ͱಉ͡
  2. 1SPDFTTFYJUFEXJUIDPEF ͱ͸ For the shell's purposes, a command which exits

    with a zero exit status has succeeded. An exit status of zero indicates success. A non-zero exit status indicates failure. When a command terminates on a fatal signal N, bash uses the value of 128+N as the exit status. NBOCBTIΑΓ ਖ਼ৗʹऴྃ͠ͳ͔ͬͨͱ͖ɺCBTI͸ /Λग़͢ /͸ͱͳΔ
  3. 1SPDFTTFYJUFEXJUIDPEF ͱ͸ SIGKILL 9 Term Kill signal SIGSEGV 11 Core

    Invalid memory reference SIGPIPE 13 Term Broken pipe: write to pipe with no readers NBOTJHOBMΑΓ ͱ͍͏ͷ͸4*(4&(7ɺͭ·Γ4FHNFOUBUJPO'BVMU
  4. w 5IFCBTJDTXIBUZPVEJE XIBUZPVXBOUFEUPIBQQFO BOEXIBUBDUVBMMZIBQQFOFE
 جຊ͋ͳ͕ͨԿΛͯ͠ɺԿΛ๬ΜͰͯɺͦ͏ͳͬͨͷ͔ w "MXBZTTFBSDIBCVHEBUBCBTFpSTU
 ࠷ॳʹόάͷσʔλϕʔε୳͍ͯͩ͘͠͞ w *GZPVVOEFSTUBOEFSSPSNFTTBHF

    BTLGPSIFMQ
 ΤϥʔϝοηʔδΛཧղͰ͖ͳ͍ͳΒɺॿ͚ΛݺΜͰ͍ͩ͘͞ʢ͜͜Ͱ͸ͳ͍ʣ w #FCSJFG CVUEPO`UMFBWFBOZJNQPSUBOUEFUBJMTPVU
 ୹͘؆ܿʹɺ͔͠͠ॏཁͳ͜ͱ͸ൈ͔͞ͳ͍Ͱ͍ͩ͘͞ w 6TF&OHMJTI w %PO`USFQPSUCVHTBCPVUPMEWFSTJPOT
 ݹ͍όʔδϣϯͷόάΛใࠂ͠ͳ͍Ͱ͍ͩ͘͞ w 0OMZSFQPSUPOFQSPCMFNJOFBDICVHSFQPSU
 ҰͭͷόάʹҰͭͷใࠂΛॻ͍͍ͯͩ͘͞
  5. 4VNNBSZ w ؆ܿʹจͰΘ͔ΔΑ͏ͳจষΛॻ͘Α͏౒ΊΔ w όάΛߏ੒͢ΔཁૉNC@DIFDL@FODPEJOH DSBTI 4FHNFOUBUJPO GBVMU 4FHGBVMU 4&(7ʜ

    BSHVNFOU BSSBZ w NC@DIFDL@FODPEJOHͳͷ͔ʁ w DSBTIͰ௨͡Δ͔ʁ w BSHVNFOU͸Ҿ਺͕ͩɺͲͷҾ਺͔ʁ w BSSBZʹ΋ཁૉͷ͋ΔBSSBZͱແ͍BSSBZͱ͕͋Δ͕ɺ྆ํௐ΂͔ͨʁ
  6. 4VNNBSZͷจষͷ֬ೝ w όάΛߏ੒͢ΔཁૉNC@DIFDL@FODPEJOH DSBTI BSHVNFOU BSSBZ w DSBTIͰ௨͡Δ͔ʁ w ଞͷ4FHNFOUBUJPOGBVMUͷνέοτΛಡΜͰΈ͕ͨɺ໰୊ͳ͍Α͏ͩ

    w BSHVNFOU͸Ҿ਺͕ͩɺͲͷҾ਺͔ʁ w ࠷ॳͷҾ਺ͰҾ͖ى͜͞ΕΔɻୈೋҾ਺ͷFODPEJOHͰ͸ى͜Βͳ͔ͬͨ w BSSBZʹ΋ཁૉͷ͋ΔBSSBZͱແ͍BSSBZͱ͕͋Δ͕ɺ྆ํௐ΂͔ͨʁ w ۭͰ͸ͳ͍BSSBZ l΄͛z ͳͲΛௐ΂ͨΒɺ௨ৗऴྃͨ͠ͷͰɺۭͷBSSBZ ͷͱ͖ͷΈى͜Δ