u|XgƍvŎgĂ݂̏ꍇiXł̎gpj



āÃeLXg̓A^CŁAeXgȂ珑Ă܂B
|Xgƍ́ACXg[܂B
́AiXMĂ킯ł͂܂̂ŁAۂ̂ƂA
Xׂ̍͂悭킩Ă܂B
Ƃ킯ŁAꏏɃeXgĂ݂܂傤B
|Xgƍ͈ȉURL_E[hł܂B
http://www.geocities.jp/poskoma/


Ȃ݂ɁAreadmȇΏێ҂́A|XgƍɍŏĂ
saoriȂgƂ͂邯ǁAŁAVsaoriǉƂ͂ȂB
炢̃x̐lł邾킩Ē悤ɏĂ܂̂ŁA
saorigȂĂɂ́Aς܂ǂe܂B
́AKv̂݁Aǂݗxŏ\ł܂B


Ȃ݂ɁAreadme.txtŎɉĂ̂́ÃrgCiVXej֐̎s@łB
̃rgC֐̉́A

http://emily.nanika.jp/ayaya/pukiwiki.php?AYA%A5%C9%A5%AD%A5%E5%A5%E1%A5%F3%A5%C8%2FV5%2F%A5%B7%A5%B9%A5%C6%A5%E0%B4%D8%BF%F4#g2041fc9

B
ȂASAORIƂĎgꍇ̓̍قɊւāÃt@C
Eӓ_@ȍ~ɋLq܂̂ŁAp̍ۂ́Ałǂ݂܂ƁA
\zOȓĂ܂\͎኱̂ł͂ȂƎv܂B




ł̓eXg͂߂܂傤B
܂A̔zzƈꏏɓĂt@Ĉ
aya5.dll
aya5.txt
ayasaori.aym
builtin.aym
`POST_and_KOMAINU\ghost\master\saoritH_ɓ܂
î̂Ă܂Ă͋N܂񂪁jB
ǂ̃tH_֒uɊւẮA"satori_conf.txt" ɃpXʂ悤ɋLqĒ΁A
ǂł\łBeXgƂƂŁA킩₷ꏊɓ܂B
ƂŁAgqaymƂ̂A悭킩ȂgqƎvł傤A
Ƃ܂ẮAayaW[̂łBg͂̃eLXgt@CłB
aym͊KIɂOɂĂ݂ł̂ŁAaya5.txt̕
t@CƓOɂȂ悤ɂĂ΁Aayaori.txtłharunavirus.exe
ł肠܂BȂׂ킩₷Oǂł傤B


āAb܂A܂saoritH_ɏL4t@CĂ݂łB
x́`\POST_and_KOMAINU\ghost\master
"satori_conf.txt"ASAORI̍ڂ̉̕ɁA
aya,saori/aya5.dll
ƁApXdllƈv悤ɒǋL܂B
̋Lq̈Ӗ̂킩Ȃꍇ́A܂AX̃}jAłmFB
saorixłgƂ̂ȂȂƂȂ𒸂ł傤B
Ô߂ɏĂ܂ƁA"aya" GCAXiĂяo̖OjŁA
"satori/aya5.dll"  "`\POST_and_KOMAINU\ghost\master" tH_̑΃pXłB


́A̗Xdic`.txtƓtH_
dic_test.txt
쐬A

1
iaya, strlen, ĂƂĂƂĂƁj

Ƃ2sǉĂ݂܂傤B
strlenƂ̂́A̎̈ił"ĂƂĂƂĂ")
𒲂ׂ֐łB"ĂƂĂƂĂ" ͐9ł̂ŁAu9vƕ\͂B
ƂŁAstrlenƂ̂́AAYÃrgCiVXej֐łB
rgC֐̏ڂéAȉ̃TCgB


http://emily.nanika.jp/ayaya/pukiwiki.php?AYA%A5%C9%A5%AD%A5%E5%A5%E1%A5%F3%A5%C8%2FV5%2F%A5%B7%A5%B9%A5%C6%A5%E0%B4%D8%BF%F4#g2041fc9

URLłstrlen͑啶STRLENłÃW[ł́A
啶łłlɓ삢܂B
Ƃ͖̂߂l𑀍삵₷悤ɁAł̓rgC֐𒼐ڌĂ΂ȂŁA
ԐړIɌĂяodg݂ɂȂĂ邩łB
builtins.aym rgC֐Ē`p̃W[ɂȂĂ܂B
ǂdg݂Ȃ̂lȂĂA܂x܂̂łSB




āAŕĂяo͐܂B
eXgĂ݂܂傤B
|XgƍNāA_uNbNĂ݂܂

\[\[ŃoOC邱30\[\[

āA30͎̂ŁA݂Ȃ͈u
̃o[Ɂu9vƕ\ꂽ͂łB

肭̂ŁAʂ̊֐gĂ݂܂傤
قǂ́A
iaya, strlen, ĂƂĂƂĂƁj

iaya, replace, ĂƂĂƂĂ, Ă, Ƃ܁j
ɕςĂ݂ĂB
 "ĂƂĂƂĂ"  "Ă" ƂS
"Ƃ" ƂɕςĂ܂B
ǂ\邩\z܂ł傤B

|Xgƍ[hāA_uNbNĂ݂܂傤B
uƂ܂ƂƂ܂ƂƂ܂Ɓvƍ͂Ǝ̊Ғʂɕ\܂B


āAɎg֐ςĂ݂܂傤B
xsplitƂ֐gĂ݂܂Bقǂ
iaya, strlen, ĂƂĂƂĂƁj
Ƃs
iaya, split, ĂƂĂƂĂ, āj
ɕςĂ݂܂B
 "ĂƂĂƂĂ"  "" ƂŕƂӖłB
x̂Ƃ|XgċNāAa_uNbN܂ƁA
̃o[Ɂu4vƕ\܂B
A҂𗠐؂ꂽłB
 "ĂƂĂƂĂ"̒ɂ "" 3̂ŁA
"" ŕ4̕ɕ܂ƂӖ "4" łB
łA𕪊̂łAʂ͂ʂ~킯ł͂܂ˁB
͕ꂽꂼ̕~킯łB
ǂĕ\邩ƂƂłA
iaya, split, ĂƂĂƂĂ, āj
irOj
irPj
irQj
ƂɁirjƂŁAʂꂽ񂪎悤łB
ɁirOj`irQjdic_test.txt ɏĕ\Ă݂܂傤B
ĂэċNāA_uNbNłB
̃o[ɂ

4
irOj



ƕ\܂B
ǂoÔ悤ȕ\łA͈ꕔX̎dl̓삾肵܂B
irOjirOĵ܂܂ɂȂĂ܂Ƃ̂́A
 "ĂƂĂƂĂ"  "" 4ɕꂽ킯łA
irOj͍ŏ "" OA܂艽Ȃi󕶎ƂjȂ̂łB
Xł́A󕶎łAsaori瓚ԂĂA󕶎݂͑ȂƔFĂ܂悤łB
͎vł͂ǂ悤ȂƂłB
A܂肪cĂ܂B
iaya, split, ĂƂĂƂĂ, āj
ŕ\ "4" ƂłBȂ̂\ĂĂ
܂F܂̂ŁAǂɂĕ\Ȃ悤ɂȂƂȂ悤łB
\Ȃ@͂ǂ̃TCgŌƂC܂̂ŒTĂ݂܂傤B

XWiki
http://www.mac.gn.to/satori/index.php?%5B%5BSAORI%B4%D8%CF%A2%5D%5D

Ō܂BnopƂAԂĂl\Ȃ悤ɂ闢X̕W֐悤łˁB
g
inop,iaya, split, ĂƂĂƂĂ, ājj
irOj
irPj
irQj
ƏĂxĂ݂܂B

[s]
irOj



ɋsĂ܂܂AX̎ł́AȂs͋sɂȂĂ܂̂Ő\łˁB
́irjcɂ炸ׂĂ邩炱Ȃ̂łāAɈs
inop,iaya, split, ĂƂĂƂĂ, ājjirOjirPjirQj
̂悤ɏ΁Asł͂ȂȂ͂łiirOĵ܂ܕ\͉Ă܂񂪁jB
āAȂƂȂg͂킩Ă܂ł傤B

A܂ŃeXgƂĎĂ֐́A悭悭lĂ݂܂ƁA
ssu.dllłł邱Ƃ΂łBقƂǈꏏł͂Ȃł傤
issu.dllgƂȂ̂ł킩܂񂪁jB


܂ł̊֐ł́A킴킴gloȂƂƎv܂̂ŁA
ŌɃt@C̓ǂݍ݂Ă݂܂B
dic_test.txtȉ̂悤ɏĂ݂ĂB

1
inop,iaya, fopen, aya5.txt, rjj
i[vj

[v
iaya, fread, aya5.txtj
[vI	irOjEOF
i[vj

[vI
inop,iaya, fclose, aya5.txtjj


ŌƂƂŖ[vƂS̏Ƃg܂B
L̃XNvgy܂ƁA
t@CJ֐fopenAt@C1sǂݍނ̂freadA
t@C̂fclosełB
ifopen, aya5.txt, rj  "r" ͓ǂݍݐpŊJ܂ƂӖł
iJԂ܂Å֐̏ڍׂɂ܂Ă͕jB

[v
gfreadJԂƂŁAt@CŌ܂œǂݍނƂł悤ɂȂĂ܂B
t@C̍Ō܂łfreadĂłAȏ͉ԂĂȂȂA
ɁirOjEOFƂɂȂ̂ŁAEOFɂȂ烋[vI悤ȏ܂B
Ōfclose͂ĂȂĂ|Xgƍ̏Iɂ͕̕ŕĂ̂ł傤A
̂Ȃ̂@ƂāAgI̂{łB

̃Tv̎s͊eōsĂ݂ĂB
ƂƂŁA̎g͂܂ł傤B




EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
Eӓ_
EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
Eirjɒl֐ƓȂ֐̌

{IɁAɁuėpzŕԂvƏĂ֐͔zŕԂČ邽߂
irjgĂ܂B܂̕ӂڈłiŎgfread͕Kv̓[ułjB
biltins.aymt@C`Ē΁AY֐ɂ́A
// Value[0..n]: ꂽ
̂悤ɃRgĂ邩Ǝv܂iValue0 Xł́irOjɂȂ܂jB
ƂĂAꂾł͂se؂ł܂̂ŁAꗗɂĂ݂܂
irjɒl֐́A

any       iirOj̓e͑IꂽnԂȂAn - 1j
asearchex i񋓐Ԃj
fread     it@CSǂ݂ƂirOjEOFɂȂj
getmeminfo
gettime
re_getlen i񋓐Ԃj
re_getpos i񋓐Ԃj
re_getstr i񋓐Ԃj
re_grep   iirj̓éAK\Ƀ}b`j
re_match  iirj̓éAK\Ƀ}b`j
re_replaceiirj̓éAK\Ƀ}b`j
re_search iirj̓éAK\Ƀ}b`j
re_split  iԂj
split     iԂj
splitpath iԂj


ƂȂ܂BSđ啶łl̓ɂȂ܂B
̊֐́ÃVXe֐̐Ƃ͕ԂlقȂĂ̂܂B
igetmeminfogettime͂ꎩ͉̂ԂĂ܂B܂Afread̓t@Cǂݍ񂾍sԂ܂jB
́Airj̕𒆐SɊp邱ƂɂȂƎv܂B



ƂŁArgC֐̒ɂSAORIƂĎgꍇӖȂȂ̂܂B
Ⴆ tointi"33"i񂳂ĵ悤ȕ̐𐮐33i񂶂イjɕϊj
̂悤Ȋ֐́AxɕϊĂAxɕԂɕɖ߂Ă܂܂ivgR̐łj
CÂ͈̂̔͂łA֐ɂ́Abiltins.aym ŌyRt
RgĂ܂B

̕ϐM肷
lettoname
erasevar
gettype
savevar
̂悤Ȋ֐g悤ɂĂ͎g܂Agǂ͓ł傤B


EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
E400 Bad Request ԂĂ̂ł

ԑ\ƂẮAĂяöȂꍇłB
ڍׂ́Aayasaori.log mFĂiꂾł͂킩Ȃ\܂jB
aya5.txt
//log, ayasaori.log
Ƃs̓//ayasaori.logƂOɋL^܂B


EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
ETvǉW[ "sample.aym"  "dic_sample.txt" ̎gp@ɂ

"dic_sample.txt" ́A"sample.aym" W[eXg邽߂̗XłB
"dic_sample.txt" ́A̗XƓtH_ɓĂB
"sample.aym" ́̕Aaya5.dll ƓtH_ɓĂB
"sample.aym" gpꍇ́A "aya5.txt" 
//dic, sample.aym
Ƃs̓ // āB
dic, sample.aym
ƂȂ悤ɂĂB
lɁAVW[ǉꍇ́A"aya5.txt" 
dic, W[
̂悤ɒǋLĂłB


EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
EǉW[liɕ[Uj

ʓIɊ֐́A
ModuleName.MethodName
̂悤ɏ̂ǂƎv܂B

ModuleName.` ̓ModuleNamêꂩ߂ČĂ΂钼O
ModuleName.LoadƂ֐Ă΂܂̂ŁAKv΂ɂpB
܂AModuledName.UnloadƂ֐AsaorĩA[hɌĂ΂܂̂ŁA
ModuleName.Unload֐ŕKvȏIsƗǂł傤B
Loadt@C̓ǂݍ݉͂ɎgpAUnloadŃO[oϐ̍폜AȂǂl܂B
̃Tv "sample.aym" B
Ăяoꂽ֐ -1 ԂƁA400 Bad Request ɂȂ܂B
̑̉́A"sample.aym" ɂȂ΁A悻̂ł͂ȂƎv܂B

5 ̃}jA͉LURL
http://emily.nanika.jp/ayaya/pukiwiki.php?AYA%A5%C9%A5%AD%A5%E5%A5%E1%A5%F3%A5%C8%2FV5%2F%A5%DE%A5%CB%A5%E5%A5%A2%A5%EB




EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
E쌠Ȃ

A[JCũt@C̉ρEĔzźARɍsĂB
҂̖͓ɕKv܂B

̔zźAaya5.dll ́Aumeici쐬ꂽ̂łB
aya5yъ֘A앨́Aȉ̃TCgł܂B
http://umeici.hp.infoseek.co.jp/

The others were writed by ۗ
