diff --git a/bin/fake_dynamic_load.pike b/bin/fake_dynamic_load.pike index 32f1f477e441f39dde408a46d1afd3edf5971ee2..4bd4017622ee09b91f47eb0cd5eba21ac8fdcf0b 100755 --- a/bin/fake_dynamic_load.pike +++ b/bin/fake_dynamic_load.pike @@ -348,7 +348,7 @@ void low_process_file(mixed data, string file) data=PC.hide_whitespaces(data); data=PC.strip_line_statements(data); data=PC.group(data); - if(sizeof(data) && strlen( (string) (data[0]) )) + if(sizeof(data) && sizeof( (string) (data[0]) )) { switch(((string)data[0])[0] ) { diff --git a/bin/httpd.pike b/bin/httpd.pike index a6130709a35b918767388c2bc7208a780a197130..caeeff58a4b8f0bb17f9d60713341ca950b2405e 100755 --- a/bin/httpd.pike +++ b/bin/httpd.pike @@ -1,6 +1,6 @@ #!/usr/local/bin/pike -/* $Id: httpd.pike,v 1.4 2002/12/01 01:38:28 nilsson Exp $ */ +/* $Id: httpd.pike,v 1.5 2003/01/20 17:48:45 nilsson Exp $ */ /* A very small httpd capable of fetching files only. * Written by Fredrik H�binette as a demonstration of Pike @@ -36,7 +36,7 @@ program output_class=class file::seek(offset); data=file::read(BLOCK); - if(data && strlen(data)) + if(data && sizeof(data)) { written=socket::write(data); if(written >= 0) diff --git a/bin/install.pike b/bin/install.pike index d25f20eb1073dbf2ff0f53cc25990743df3199fd..6277152e22cede5b8d02f2f26bea4cf9a91993f5 100644 --- a/bin/install.pike +++ b/bin/install.pike @@ -136,13 +136,13 @@ void status(string doing, void|string file, string|void msg) } file=replace(file,"\n","\\n"); - if(strlen(file)>45) - file=".."+file[strlen(file)-44..]; + if(sizeof(file)>45) + file=".."+file[sizeof(file)-44..]; if(msg) file+=" "+msg; if(doing) file=doing+": "+file; string s="\r "+file; - int t=strlen(s); + int t=sizeof(s); if(t<last_len) s+=" "*(last_len-t); last_len=t; write(s); @@ -165,7 +165,7 @@ int mkdirhier(string orig_dir) string dir=orig_dir; if(already_created[orig_dir]) return 1; - if(dir=="" || (strlen(dir)==2 && dir[-1]==':')) return 1; + if(dir=="" || (sizeof(dir)==2 && dir[-1]==':')) return 1; dir=fakeroot(dir); status("Creating",dir+"/"); @@ -305,7 +305,7 @@ int install_file(string from, string stripslash(string s) { - while(strlen(s)>1 && s[-1]=='/') s=s[..strlen(s)-2]; + while(sizeof(s)>1 && s[-1]=='/') s=s[..sizeof(s)-2]; return s; } @@ -362,7 +362,7 @@ object reg; string regquote(string s) { - while(s[-1] == '/' || s[-1]=='\\') s=s[..strlen(s)-2]; + while(s[-1] == '/' || s[-1]=='\\') s=s[..sizeof(s)-2]; return replace(s, ({".","[","]","*","\\","(",")","|","+"}), @@ -371,7 +371,7 @@ string regquote(string s) string globify(string s) { - if(s[-1]=='/') s=s[..strlen(s)-2]; + if(s[-1]=='/') s=s[..sizeof(s)-2]; return s+"*"; } @@ -443,7 +443,7 @@ void do_export() status("Creating",export_base_name+".burk"); Stdio.File p=Stdio.File(export_base_name+".burk","wc"); string msg=" Loading installation script, please wait..."; - p->write("w%4c%s",strlen(msg),msg); + p->write("w%4c%s",sizeof(msg),msg); #define TRANSLATE(X,Y) combine_path(".",X) : Y string tmpdir="~piketmp"; @@ -470,13 +470,13 @@ void do_export() dirs-=({""}); sort(dirs); - foreach(dirs, string dir) p->write("d%4c%s",strlen(dir),dir); + foreach(dirs, string dir) p->write("d%4c%s",sizeof(dir),dir); foreach(Array.transpose( ({ to_export, translated_names }) ), [ string file, string file_name ]) { status("Adding",file); if (string f=Stdio.read_file(file)) { - p->write("f%4c%s%4c",strlen(file_name),file_name,strlen(f)); + p->write("f%4c%s%4c",sizeof(file_name),file_name,sizeof(f)); p->write(f); } else { // Huh? File could not be found. @@ -498,7 +498,7 @@ void do_export() foreach(env, string e) - p->write("e%4c%s",strlen(e),e); + p->write("e%4c%s",sizeof(e),e); #define RELAY(X) " " #X "=" + TRVAR(X)+ @@ -517,7 +517,7 @@ void do_export() " $" // $ = @argv ; - p->write("s%4c%s",strlen(cmd),cmd); + p->write("s%4c%s",sizeof(cmd),cmd); array(string) to_delete=translated_names + ({translate("pike.tmp",translator)}); to_delete=Array.uniq(to_delete); @@ -525,7 +525,7 @@ void do_export() // Generate cleanup foreach(to_delete, string del) - p->write("D%4c%s",strlen(del),del); + p->write("D%4c%s",sizeof(del),del); p->write("q\0\0\0\0"); p->close("rw"); @@ -610,7 +610,7 @@ done string script=sprintf("#!/bin/sh\n" "tar xf \"$0\" %s.x\n" "exec ./%s.x \"$0\" \"$@\"\n", tmpname, tmpname, tmpname); - if(strlen(script) >= 100) + if(sizeof(script) >= 100) { werror("Script too long!!\n"); exit(1); @@ -1000,7 +1000,7 @@ int pre_install(array(string) argv) case "": default: case "--new-style": - if(!(lnk=vars->pike_name) || !strlen(lnk)) { + if(!(lnk=vars->pike_name) || !sizeof(lnk)) { lnk = combine_path(vars->exec_prefix || combine_path(vars->prefix, "bin"), "pike"); old_exec_prefix=vars->exec_prefix; // to make the directory for pike link @@ -1224,7 +1224,7 @@ void do_install() pike_bin_file=combine_path(vars->TMP_BUILDDIR,"pike.tmp"); Stdio.write_file(pike_bin_file, pike_bin); Stdio.File f=Stdio.File(pike_bin_file,"rw"); - f->seek(pos+strlen(MASTER_COOKIE)); + f->seek(pos+sizeof(MASTER_COOKIE)); f->write(combine_path(lib_prefix,"master.pike")); f->close(); status("Finalizing",pike_bin_file,"done"); diff --git a/bin/mkpeep.pike b/bin/mkpeep.pike index db104dd5c74003ae7c45f4caa3da929dd3994d52..045e9e36f8dbf1e7be2d5a81ca5eaa3166254e8f 100755 --- a/bin/mkpeep.pike +++ b/bin/mkpeep.pike @@ -2,7 +2,7 @@ #pragma strict_types -/* $Id: mkpeep.pike,v 1.29 2003/01/13 22:31:06 nilsson Exp $ */ +/* $Id: mkpeep.pike,v 1.30 2003/01/20 17:48:45 nilsson Exp $ */ string skipwhite(string s) { @@ -23,7 +23,7 @@ int find_end(string s) werror("find_end("+s+")\n"); #endif - for(int e=1; e<strlen(s); e++) + for(int e=1; e<sizeof(s); e++) { switch(s[e]) { @@ -51,7 +51,7 @@ array(string) explode_comma_expr(string s) array(string) ret=({}); int begin=0; - for(int e=0; e<strlen(s); e++) + for(int e=0; e<sizeof(s); e++) { switch(s[e]) { @@ -73,7 +73,7 @@ array(string) explode_comma_expr(string s) } /* Ignore empty last arguments */ - if(strlen(String.trim_all_whites(s[begin..]))) + if(sizeof(String.trim_all_whites(s[begin..]))) ret+=({ String.trim_all_whites(s[begin..]) }); #if DEBUG>4 werror("RESULT: %O\n",ret); @@ -99,7 +99,7 @@ array(int|string|array(string)) split(string s) s=skipwhite(s); /* First, we tokenize */ - while(strlen(s)) + while(sizeof(s)) { switch(s[0]) { @@ -134,7 +134,7 @@ array(int|string|array(string)) split(string s) { int i=find_end(s); b+=({ s[0..i] }); - s=s[i+1..strlen(s)]; + s=s[i+1..sizeof(s)]; } break; @@ -143,7 +143,7 @@ array(int|string|array(string)) split(string s) { int i=find_end(s); b+=({ s[0..i] }); - s=s[i+1..strlen(s)]; + s=s[i+1..sizeof(s)]; } break; } @@ -175,17 +175,17 @@ array(int|string|array(string)) split(string s) switch(a[e][0]) { case '(': - array(string) tmp=explode_comma_expr(a[e][1..strlen(a[e])-2]); + array(string) tmp=explode_comma_expr(a[e][1..sizeof(a[e])-2]); for(int x=0;x<sizeof(tmp);x++) { string arg=sprintf("$%d%c", i, 'a'+x); - if(arg != tmp[x] && strlen(tmp[x])) + if(arg != tmp[x] && sizeof(tmp[x])) newa+=({ sprintf("(%s)==%s",tmp[x], arg) }); } break; case '[': - newa+=({ a[e][1..strlen(a[e])-2] }); + newa+=({ a[e][1..sizeof(a[e])-2] }); break; case 'F': @@ -338,7 +338,7 @@ void dump2(array(array(array(string))) data,int ind) if(i+1<sizeof(d[1]) && d[1][i+1][0]=='(') { string tmp=d[1][i+1]; - args=explode_comma_expr(tmp[1..strlen(tmp)-2]); + args=explode_comma_expr(tmp[1..sizeof(tmp)-2]); i++; } write("%*n %d,%s,%{(%s), %}\n", @@ -372,7 +372,7 @@ int main(int argc, array(string) argv) foreach(f/";",f) { f=skipwhite(f); - if(!strlen(f)) continue; + if(!sizeof(f)) continue; data+=({split(f)}); } } diff --git a/bin/tarfilter.pike b/bin/tarfilter.pike index c82b274747039595a305a6abd096497d6a7cddbe..9b47b943d2e9a6948a0d078d05da6890f5edd8ad 100755 --- a/bin/tarfilter.pike +++ b/bin/tarfilter.pike @@ -13,7 +13,7 @@ void copydata(Stdio.File in, Stdio.File out, int size) exit(1); } out->write(s); - size -= strlen(s); + size -= sizeof(s); } } @@ -23,7 +23,7 @@ void doit(Stdio.File in, Stdio.File out) string s = in->read(512); if(s == "") break; - if(strlen(s) != 512) { + if(sizeof(s) != 512) { werror("READ ERROR on input\n"); exit(1); } diff --git a/bin/test_pike.pike b/bin/test_pike.pike index fdeeea6b957a5e72670dce8a4c4f1898f88a9e7f..0cd08b4f1eb47e530c113bb3f4a48cdcbef492a9 100755 --- a/bin/test_pike.pike +++ b/bin/test_pike.pike @@ -1,6 +1,6 @@ #!/usr/local/bin/pike -/* $Id: test_pike.pike,v 1.79 2002/12/30 01:29:53 nilsson Exp $ */ +/* $Id: test_pike.pike,v 1.80 2003/01/20 17:48:45 nilsson Exp $ */ import Stdio; @@ -159,7 +159,7 @@ void run_watchdog(int pid) { #ifdef WATCHDOG_PIPE thread_create(lambda() { object o=Stdio.File("stdin"); - while(strlen(o->read(1) || "")) + while(sizeof(o->read(1) || "")) { last_time=time(); } diff --git a/bin/unbug b/bin/unbug index 387bfe1e0cfb2f5b653dae724016ad564e0ed271..87cf39b58d1d336a8c08747746be66a779f7b8e6 100644 --- a/bin/unbug +++ b/bin/unbug @@ -501,10 +501,10 @@ class Gdb buffer+=tmp; if(spos<0) spos=0; pos=search(buffer,prompt,spos); - spos=strlen(buffer)-strlen(prompt); + spos=sizeof(buffer)-sizeof(prompt); }while(pos == -1); ret=buffer[..pos-1]; - pos+=strlen(prompt); + pos+=sizeof(prompt); buffer=buffer[pos..]; spos=0; return ret; @@ -833,7 +833,7 @@ class Gdb void create(string e) { __expr=e; - if(strlen(__expr) > 200) _evaluate(); + if(sizeof(__expr) > 200) _evaluate(); } } @@ -914,10 +914,10 @@ class Debug #endif ret=mkhandle(prog, "->linenumbers[0]@ ", prog, "->num_linenumbers")->_value(); - if(strlen(ret) != prog->num_linenumbers->_value()) + if(sizeof(ret) != prog->num_linenumbers->_value()) { werror("Failed to get line number info!\n"); - werror("strlen(%O) != %O (it is %d)\n",ret, prog->num_linenumbers->_value(),strlen(ret)); + werror("sizeof(%O) != %O (it is %d)\n",ret, prog->num_linenumbers->_value(),sizeof(ret)); } return line_number_info_cache[progid]=ret; } @@ -967,7 +967,7 @@ class Debug } }; - while(cnt < strlen(lineinfo)) + while(cnt < sizeof(lineinfo)) { if(lineinfo[cnt] == 127) { @@ -1167,7 +1167,7 @@ class Debug odesc="({"; for(int e=0;e<_sizeof();e++) { - if(strlen(odesc)>300) + if(sizeof(odesc)>300) { odesc+="...."+(_sizeof()-e); break; @@ -1247,12 +1247,12 @@ class Debug int done; foreach(cache, KeyPair k) { - if(strlen(odesc)>300) + if(sizeof(odesc)>300) { odesc+="...."+(_sizeof()-done); break; } - if(strlen(odesc)>2) odesc+=","; + if(sizeof(odesc)>2) odesc+=","; done++; odesc+=sprintf("%O:%O",k->ind, k->val); } @@ -2817,7 +2817,7 @@ string find_in_path(string cmd) int main(int argc, array(string) argv) { - write(#"UNBUG $Id: unbug,v 1.9 2002/10/31 17:26:24 nilsson Exp $ + write(#"UNBUG $Id: unbug,v 1.10 2003/01/20 17:48:45 nilsson Exp $ Copyright 2001-2002, Roxen Internet Software AB. Copyright 2002, Department of Computer and Information Science, Link�ping University diff --git a/lib/modules/ADT.pmod/struct.pike b/lib/modules/ADT.pmod/struct.pike index a0ad2de3770f4226b632a2cf908404065e29d1e5..d5188117fc1a5e634b5576542fa162bc28c3c9a9 100644 --- a/lib/modules/ADT.pmod/struct.pike +++ b/lib/modules/ADT.pmod/struct.pike @@ -69,9 +69,9 @@ void put_uint(int i, int len) //! document me! void put_var_string(string s, int len) { - if ( (len <= 3) && (strlen(s) >= ({ -1, 0x100, 0x10000, 0x1000000 })[len] )) + if ( (len <= 3) && (sizeof(s) >= ({ -1, 0x100, 0x10000, 0x1000000 })[len] )) error("ADT.struct->put_var_string: Field overflow.\n"); - put_uint(strlen(s), len); + put_uint(sizeof(s), len); add_data(s); } @@ -112,7 +112,7 @@ void put_var_uint_array(array(int) data, int item_size, int len) int get_uint(int len) { mixed i; - if ( (strlen(buffer) - index) < len) + if ( (sizeof(buffer) - index) < len) error("ADT.struct->get_uint: no data\n"); sscanf(buffer, "%*" + (string) index +"s%" + (string) len + "c", i); index += len; @@ -125,7 +125,7 @@ string get_fix_string(int len) { string res; - if ((strlen(buffer) - index) < len) + if ((sizeof(buffer) - index) < len) error("ADT.struct->get_fix_string: no data\n"); res = buffer[index .. index + len - 1]; index += len; @@ -180,6 +180,6 @@ array(mixed) get_var_uint_array(int item_size, int len) //! 1 if empty, 0 otherwise int is_empty() { - return (index == strlen(buffer)); + return (index == sizeof(buffer)); } diff --git a/lib/modules/Audio.pmod/Format.pmod/module.pmod b/lib/modules/Audio.pmod/Format.pmod/module.pmod index 6a17ce9a4e52d5fb57f6beae50bbfc1b3cb27af3..088e22fa45a2891d4cd3598df709cc643bd7b6db 100644 --- a/lib/modules/Audio.pmod/Format.pmod/module.pmod +++ b/lib/modules/Audio.pmod/Format.pmod/module.pmod @@ -4,7 +4,7 @@ // // Author: Honza Petrous, hop@unibase.cz // -// $Id: module.pmod,v 1.5 2002/11/29 00:30:37 nilsson Exp $ +// $Id: module.pmod,v 1.6 2003/01/20 17:43:59 nilsson Exp $ //#define AUDIO_FORMAT_DEBUG #ifdef AUDIO_FORMAT_DEBUG @@ -166,16 +166,16 @@ class vbuffer { // 1 = string, 0 or void = integer string|int getbytes( int n, int|void s ) { DEBUG("getbytes: n: %d, s: %d\n", n, s); - if( !buffer || !strlen(buffer) ) { + if( !buffer || !sizeof(buffer) ) { if(!fd) return -1; bpos = 0; buffer = fd->read( BSIZE ); } - if( !strlen(buffer) ) + if( !sizeof(buffer) ) return s?0:-1; if( s ) { - if( strlen(buffer) - bpos > n ) { + if( sizeof(buffer) - bpos > n ) { string d = buffer[bpos..bpos+n-1]; buffer = buffer[bpos+n..]; bpos=0; @@ -187,7 +187,7 @@ class vbuffer { buffer = buffer[bpos..]; bpos=0; string t = fd->read( BSIZE ); - if( !t || !strlen(t) ) + if( !t || !sizeof(t) ) return -1; buffer+=t; return getbytes(n,1); @@ -197,12 +197,12 @@ class vbuffer { while( n-- ) { res<<=8; res|=buffer[ bpos++ ]; - if( bpos == strlen(buffer) ) { + if( bpos == sizeof(buffer) ) { if(!fd) return -1; bpos = 0; buffer = fd->read( BSIZE ); - if( !buffer || !strlen( buffer ) ) + if( !buffer || !sizeof( buffer ) ) return -1; } } diff --git a/lib/modules/Calendar.pmod/Events.pmod b/lib/modules/Calendar.pmod/Events.pmod index 9e2f176e1bf044697ac7ad61df8eaf56f9b6e0cb..a4a2366cf5b7f37026e87071a4c26b30460fcef4 100644 --- a/lib/modules/Calendar.pmod/Events.pmod +++ b/lib/modules/Calendar.pmod/Events.pmod @@ -187,7 +187,7 @@ Event.Namedays find_namedays(string region) if (i==-1) return UNDEFINED; // not found int i2=search(all,"\nRegion",i+1); - if (i2==-1) i2=strlen(all)-1; + if (i2==-1) i2=sizeof(all)-1; array(array(string)) names=0; int start=-1,stop=-1; diff --git a/lib/modules/Calendar.pmod/Time.pmod b/lib/modules/Calendar.pmod/Time.pmod index e4b011241cf9c3122094b8266f49b62bfaf166a5..b135704c43212ce964b7ecf642c779df7599df82 100644 --- a/lib/modules/Calendar.pmod/Time.pmod +++ b/lib/modules/Calendar.pmod/Time.pmod @@ -971,7 +971,7 @@ class TimeofDay { \ _ind+=IND; \ TimeRange x=::OP(@args); \ - _ind=_ind[..strlen(_ind)-strlen(IND)-1]; \ + _ind=_ind[..sizeof(_ind)-sizeof(IND)-1]; \ werror(_ind+" %O\n",this_object()); \ foreach (args,TimeRange t) werror(_ind+NAME+" %O\n",t); \ werror(_ind+"= %O\n",x); \ @@ -1059,7 +1059,7 @@ class cSuperTimeRange int from=0,to=0x7fffffff,pos=0; array res=({}); TimeRange last=0; - string ums=unit[..strlen(unit)-2]; // no 's' + string ums=unit[..sizeof(unit)-2]; // no 's' if (sizeof(range)==2) [from,to]=range; @@ -1095,7 +1095,7 @@ class cSuperTimeRange { int pos=0; TimeRange last=0; - string ums=unit[..strlen(unit)-2]; // no 's' + string ums=unit[..sizeof(unit)-2]; // no 's' foreach (parts,TimeRange part) { diff --git a/lib/modules/Calendar.pmod/Timezone.pmod b/lib/modules/Calendar.pmod/Timezone.pmod index 412ea12179ff670254367d7718e7c2fcd23c8106..7f659f4ed6dd6aace392020ae7eb3de66acdf0e1 100644 --- a/lib/modules/Calendar.pmod/Timezone.pmod +++ b/lib/modules/Calendar.pmod/Timezone.pmod @@ -334,7 +334,7 @@ static private Ruleset.Timezone _magic_timezone(string tz) if (sscanf(tz,"%[-+]%[-+0-9]",string a,string b)==2) if ((<"-","+">)[a]) { - switch (strlen(b)) + switch (sizeof(b)) { case 2: return _magic_timezone("UTC"+a+b[..1]); case 4: return _magic_timezone("UTC"+a+b[..1]+":"+b[2..]); @@ -1097,7 +1097,7 @@ class Runtime_timezone_compiler z->add(b); foreach (q/"\n",string line) { - if (sscanf(line,"%*[ \t]%[-0-9]%s",a,b)==3 && strlen(a)) + if (sscanf(line,"%*[ \t]%[-0-9]%s",a,b)==3 && sizeof(a)) z->add(a+b); else if (sscanf(line,"%*[ ]#%*s")<2) break; // end of zone diff --git a/lib/modules/Calendar.pmod/YMD.pmod b/lib/modules/Calendar.pmod/YMD.pmod index 2170fd3e463b38e490d3b15392f51fcc38f102bc..bf2f320714be57e7b627702223f59e7d932f5526 100644 --- a/lib/modules/Calendar.pmod/YMD.pmod +++ b/lib/modules/Calendar.pmod/YMD.pmod @@ -2630,12 +2630,12 @@ TimeRange parse(string fmt,string arg,void|TimeRange context) { int y,mo,d; - if (strlen(m->d)==6) + if (sizeof(m->d)==6) { [y,mo,d]=(array(int))(m->d/2); if (y<70) y+=2000; else y+=1900; } - else if (strlen(m->d)==8) + else if (sizeof(m->d)==8) [y,mo,d]=(array(int))array_sscanf(m->d,"%4s%2s%2s"); else return 0; @@ -2646,7 +2646,7 @@ TimeRange parse(string fmt,string arg,void|TimeRange context) if (!zero_type(m->Y)) m->year=cal->Year(m->Y); else if (m->y) { - if (strlen(m->y)<3) + if (sizeof(m->y)<3) { m->y=(int)m->y; if (m->y<70) m->y+=2000; @@ -2714,9 +2714,9 @@ TimeRange parse(string fmt,string arg,void|TimeRange context) if (m->t) { - if (strlen(m->t)==6) + if (sizeof(m->t)==6) [h,mi,s]=(array(int))(m->t/2),g="second"; - else if (strlen(m->t)==4) + else if (sizeof(m->t)==4) [h,mi]=(array(int))(m->t/2),g="minute"; else return 0; } @@ -2865,7 +2865,7 @@ cDay dwim_day(string day,void|TimeRange context) else return (d->week()+1)->place(d); } - if (strlen(day)==4) catch { return parse("%M/%D",day/2*"/",context); }; + if (sizeof(day)==4) catch { return parse("%M/%D",day/2*"/",context); }; if (day=="today") return t; if (day=="tomorrow") return t+1; diff --git a/lib/modules/Calendar.pmod/mkrules.pike b/lib/modules/Calendar.pmod/mkrules.pike index 36bd390b9a9b7d02cf9aeced43c3138287e5f890..97e367aba12bd280ab236d43fa3195beed48e411 100644 --- a/lib/modules/Calendar.pmod/mkrules.pike +++ b/lib/modules/Calendar.pmod/mkrules.pike @@ -10,7 +10,7 @@ // and zic(8) is the usual compiler. // pike mkrules.pike ../data/{africa,antarctica,asia,australasia,backward,etcetera,europe,northamerica,pacificnew,southamerica,systemv} -// $Id: mkrules.pike,v 1.6 2000/11/08 22:38:41 hubbe Exp $ +// $Id: mkrules.pike,v 1.7 2003/01/20 17:44:00 nilsson Exp $ #pike __REAL_VERSION__ @@ -669,7 +669,7 @@ void collect_rules(string file) if (links[s]) links[s]+=({t}); else links[s]=({t}); } - else if (sscanf(line,"%*[ \t]%[-0-9]%s",s,t)==3 && strlen(s)) + else if (sscanf(line,"%*[ \t]%[-0-9]%s",s,t)==3 && sizeof(s)) { if (!lastz) complain("implicit zone line w/o zone\n"); lastz->add(s+t); @@ -708,7 +708,7 @@ int main(int ac,array(string) am) tzrules=compile_string(t)(); mv("TZrules.pmod","TZrules.pmod~"); - werror("writing TZrules.pmod (%d bytes)...",strlen(t)); + werror("writing TZrules.pmod (%d bytes)...",sizeof(t)); Stdio.File("TZrules.pmod","wtc")->write(t); werror("\n"); @@ -762,7 +762,7 @@ int main(int ac,array(string) am) "// "+"-"*70+"\n"); mv("TZs.pike","TZs.pike~"); - werror("writing TZs.h (%d bytes)...",strlen(t)); + werror("writing TZs.h (%d bytes)...",sizeof(t)); Stdio.File("TZs.h","wtc")->write(t); werror("\n"); @@ -789,7 +789,7 @@ int main(int ac,array(string) am) t+="]);\n\n"; mv("TZnames.pike","TZnames.pike~"); - werror("writing TZnames.pmod (%d bytes)...",strlen(t)); + werror("writing TZnames.pmod (%d bytes)...",sizeof(t)); Stdio.File("TZnames.pmod","wtc")->write(t); werror("\n"); diff --git a/lib/modules/Colors.pmod b/lib/modules/Colors.pmod index 582ad0613b8937f0c5b6256d0e2247a9cd3593a3..598e53ef5a2b2533e63d9b5af39962e5dbc19069 100644 --- a/lib/modules/Colors.pmod +++ b/lib/modules/Colors.pmod @@ -83,7 +83,7 @@ array(int) cmyk_to_rgb(array(int)|int c, int|void m, int|void y, int|void k) array(int(0..255)) parse_color(string name) { Image.Color.Color color; - if(!name || !strlen(name)) return ({ 0,0,0 }); // Odd color... + if(!name || !sizeof(name)) return ({ 0,0,0 }); // Odd color... if(color=Image.Color.guess(name)) return color->rgb(); diff --git a/lib/modules/Crypto/_rsa.pike b/lib/modules/Crypto/_rsa.pike index d52b094afc687432d84f06756c218a998b42a8bc..09332b0e389ffc1acd29f0c554903e7ad64cc23b 100644 --- a/lib/modules/Crypto/_rsa.pike +++ b/lib/modules/Crypto/_rsa.pike @@ -1,4 +1,4 @@ -/* $Id: _rsa.pike,v 1.6 2002/03/09 18:12:21 nilsson Exp $ +/* $Id: _rsa.pike,v 1.7 2003/01/20 17:44:00 nilsson Exp $ * * Follow the PKCS#1 standard for padding and encryption. */ @@ -98,8 +98,8 @@ bignum rsa_pad(string message, int type, mixed|void random) string cookie; int len; - len = size - 3 - strlen(message); - /* write(sprintf("%d, %d, %d, %s", len, size, strlen(message), message)); */ + len = size - 3 - sizeof(message); + /* write(sprintf("%d, %d, %d, %s", len, size, sizeof(message), message)); */ if (len < 8) error( "Crypto.rsa->rsa_pad: Too large block.\n" ); @@ -128,7 +128,7 @@ string rsa_unpad(bignum block, int type) string s = block->digits(256); int i = search(s, "\0"); - if ((i < 9) || (strlen(s) != (size - 1)) || (s[0] != type)) + if ((i < 9) || (sizeof(s) != (size - 1)) || (s[0] != type)) return 0; return s[i+1..]; } diff --git a/lib/modules/Crypto/des3.pike b/lib/modules/Crypto/des3.pike index 73589865cc9f92ad94186b2508a1fc429052b334..371f5fe8f94d53b0fcfeeb43c6dd49442922a709 100644 --- a/lib/modules/Crypto/des3.pike +++ b/lib/modules/Crypto/des3.pike @@ -1,4 +1,4 @@ -/* $Id: des3.pike,v 1.7 2001/11/08 01:45:38 nilsson Exp $ +/* $Id: des3.pike,v 1.8 2003/01/20 17:44:00 nilsson Exp $ * */ @@ -31,7 +31,7 @@ private array(string) split_key(string key) { string k1 = key[..7]; string k2 = key[8..15]; - string k3 = (strlen(key) > 16) ? key[16..] : k1; + string k3 = (sizeof(key) > 16) ? key[16..] : k1; return ({ k1, k2, k3 }); } diff --git a/lib/modules/Crypto/dsa.pike b/lib/modules/Crypto/dsa.pike index 455289033522536115b842a343ce06df993e5558..ed7e4f8a8f7799e6243f62697f20580c2e256b76 100644 --- a/lib/modules/Crypto/dsa.pike +++ b/lib/modules/Crypto/dsa.pike @@ -119,7 +119,7 @@ string sign_rsaref(string msg) //! Document this function. int verify_rsaref(string msg, string s) { - if (strlen(s) != 40) + if (sizeof(s) != 40) return 0; return raw_verify(dsa_hash(msg), @@ -184,7 +184,7 @@ string nist_hash(bignum x) { string s = x->digits(256); - return Crypto.sha()->update(s[strlen(s) - SEED_LENGTH..])->digest(); + return Crypto.sha()->update(s[sizeof(s) - SEED_LENGTH..])->digest(); } //! Returns ({ p, q }) @@ -209,7 +209,7 @@ array(bignum) nist_primes(int l) string h = nist_hash(s) ^ nist_hash(s + 1); - h = sprintf("%c%s%c", h[0] | 0x80, h[1..strlen(h) - 2], h[-1] | 1); + h = sprintf("%c%s%c", h[0] | 0x80, h[1..sizeof(h) - 2], h[-1] | 1); bignum q = Gmp.mpz(h, 256); diff --git a/lib/modules/Crypto/hmac.pike b/lib/modules/Crypto/hmac.pike index 5660b2073f2656b3d00dbe6323f5fc2d2ff095af..a39f0faa172039e1eb406350b886e470d53ceb6d 100644 --- a/lib/modules/Crypto/hmac.pike +++ b/lib/modules/Crypto/hmac.pike @@ -44,8 +44,8 @@ class `() //! Document this function. void create(string passwd) { - if (strlen(passwd) < B) - passwd = passwd + "\0" * (B - strlen(passwd)); + if (sizeof(passwd) < B) + passwd = passwd + "\0" * (B - sizeof(passwd)); ikey = passwd ^ ("6" * B); okey = passwd ^ ("\\" * B); diff --git a/lib/modules/Crypto/randomness.pmod b/lib/modules/Crypto/randomness.pmod index ee946c0a5501a4de347823d04c745f18e9325d86..f5751f86db38343e53a8271d22aafdfb97191567 100644 --- a/lib/modules/Crypto/randomness.pmod +++ b/lib/modules/Crypto/randomness.pmod @@ -1,4 +1,4 @@ -// $Id: randomness.pmod,v 1.23 2003/01/09 17:43:20 grubba Exp $ +// $Id: randomness.pmod,v 1.24 2003/01/20 17:44:00 nilsson Exp $ //! Assorted stronger or weaker randomnumber generators. //! These devices try to collect entropy from the environment. @@ -147,7 +147,7 @@ RandomSource reasonably_random() string seed = some_entropy(); #if constant(Crypto.arcfour) - if (strlen(seed) < 2001) + if (sizeof(seed) < 2001) seed = random_string(2001); // Well, we're only at reasonably random... return (global_arcfour = arcfour_random(sprintf("%4c%O%s", time(), _memory_usage(), seed))); diff --git a/lib/modules/Crypto/rsa.pike b/lib/modules/Crypto/rsa.pike index d7d2afa0e141c8b01e78d93c19675eee05ccf9a0..735c4c7445cb17699441c83206bbdc7c91b99f8f 100644 --- a/lib/modules/Crypto/rsa.pike +++ b/lib/modules/Crypto/rsa.pike @@ -1,4 +1,4 @@ -/* $Id: rsa.pike,v 1.31 2002/03/09 18:13:27 nilsson Exp $ +/* $Id: rsa.pike,v 1.32 2003/01/20 17:44:00 nilsson Exp $ * * Follow the PKCS#1 standard for padding and encryption. */ @@ -374,7 +374,7 @@ string sha_sign(string message, mixed|void r) hash->update(message); s = hash->digest(); - s = sprintf("%c%s%c%s", 4, "sha1", strlen(s), s); + s = sprintf("%c%s%c%s", 4, "sha1", sizeof(s), s); return cooked_sign(s); } @@ -387,7 +387,7 @@ int sha_verify(string message, string signature) hash->update(message); s = hash->digest(); - s = sprintf("%c%s%c%s", 4, "sha1", strlen(s), s); + s = sprintf("%c%s%c%s", 4, "sha1", sizeof(s), s); return raw_verify(s, BIGNUM(signature, 256)); } diff --git a/lib/modules/Filesystem.pmod/System.pike b/lib/modules/Filesystem.pmod/System.pike index daf65c229ce4fb61ba8853c3363df47b3018a715..31c95bb2b9acc999f606ec447f3ac97a9f4f4eb3 100644 --- a/lib/modules/Filesystem.pmod/System.pike +++ b/lib/modules/Filesystem.pmod/System.pike @@ -55,11 +55,11 @@ static void create(void|string directory, // default: cwd #ifdef __NT__ directory = replace( directory, "\\", "/" ); string p; - if( strlen(root) ) + if( sizeof(root) ) { if( sscanf( directory, "%s:/%s", p, directory ) ) { - if( strlen( root ) ) + if( sizeof( root ) ) { if( search( root, ":/" ) == -1 ) root = p+":"+ (root[0] == '/' ?"":"/") + root; @@ -71,20 +71,20 @@ static void create(void|string directory, // default: cwd } } #endif - while( strlen(directory) && directory[0] == '/' ) + while( sizeof(directory) && directory[0] == '/' ) directory = directory[1..]; - while( strlen(directory) && directory[-1] == '/' ) - directory = directory[..strlen(directory)-2]; + while( sizeof(directory) && directory[-1] == '/' ) + directory = directory[..sizeof(directory)-2]; #ifdef __NT__ - if( strlen( directory ) != 2 || directory[1] != ':' ) + if( sizeof( directory ) != 2 || directory[1] != ':' ) #endif if(!(a = file_stat(combine_path("/",root,directory))) || !a->isdir) error("Not a directory\n"); } - while( strlen(directory) && directory[0] == '/' ) + while( sizeof(directory) && directory[0] == '/' ) directory = directory[1..]; - while( strlen(directory) && directory[-1] == '/' ) - directory = directory[..strlen(directory)-2]; + while( sizeof(directory) && directory[-1] == '/' ) + directory = directory[..sizeof(directory)-2]; wd = directory; } @@ -132,8 +132,8 @@ Filesystem.Stat stat(string file, int|void lstat) Stdio.Stat a; #ifdef __NT__ file = replace( file, "\\", "/" ); - while( strlen(file) && file[-1] == '/' ) - file = file[..strlen(file)-2]; + while( sizeof(file) && file[-1] == '/' ) + file = file[..sizeof(file)-2]; #endif string full = combine_path(wd, file); if ( full!="" && full[0]=='/') full=full[1..]; @@ -157,8 +157,8 @@ array(string) get_dir(void|string directory, void|string|array(string) globs) if(directory) { directory = replace( directory, "\\", "/" ); - while( strlen(directory) && directory[-1] == '/' ) - directory = directory[..strlen(directory)-2]; + while( sizeof(directory) && directory[-1] == '/' ) + directory = directory[..sizeof(directory)-2]; } #endif directory = directory ? combine_path(wd, directory) : wd; @@ -189,8 +189,8 @@ array(Filesystem.Stat) get_stats(void|string directory, if(directory) { directory = replace( directory, "\\", "/" ); - while( strlen(directory) && directory[-1] == '/' ) - directory = directory[..strlen(directory)-2]; + while( sizeof(directory) && directory[-1] == '/' ) + directory = directory[..sizeof(directory)-2]; } #endif if(directory && diff --git a/lib/modules/Filesystem.pmod/Tar.pmod b/lib/modules/Filesystem.pmod/Tar.pmod index b6623f0a65fca3ac19ce89b49d635c706f1a645c..a6dac820ce98e8454a1e4fea7b292e8a6bca0578 100644 --- a/lib/modules/Filesystem.pmod/Tar.pmod +++ b/lib/modules/Filesystem.pmod/Tar.pmod @@ -1,5 +1,5 @@ /* - * $Id: Tar.pmod,v 1.18 2002/11/29 00:35:51 nilsson Exp $ + * $Id: Tar.pmod,v 1.19 2003/01/20 17:44:00 nilsson Exp $ */ #pike __REAL_VERSION__ @@ -215,7 +215,7 @@ class _Tar // filesystem Record r; string s = this_program::fd->read(512); - if(s=="" || strlen(s)<512 || sscanf(s, "%*[\0]%*2s")==1) + if(s=="" || sizeof(s)<512 || sscanf(s, "%*[\0]%*2s")==1) break; r = Record(s, pos+512); diff --git a/lib/modules/GTKSupport.pmod/MenuFactory.pmod b/lib/modules/GTKSupport.pmod/MenuFactory.pmod index b55321fceb786de9110b895538d78bd1ddef8e38..173d3024e183c2364df7445be0ad9d21401801d3 100644 --- a/lib/modules/GTKSupport.pmod/MenuFactory.pmod +++ b/lib/modules/GTKSupport.pmod/MenuFactory.pmod @@ -53,7 +53,7 @@ string shortcut_to_string( int key, int mod ) if(mod & FLAG_META) m += "M"; if(mod & FLAG_HYPER) m += "H"; if(mod & FLAG_SUPER) m += "U"; - if(strlen(m)) m+= "-"; + if(sizeof(m)) m+= "-"; return sprintf("%s%c",m, key); } diff --git a/lib/modules/Getopt.pmod b/lib/modules/Getopt.pmod index 0db1da756857aa2e87440c4821405b07898405ef..668bfa6b5164b278168487b00d0cd22041f1d2ad 100644 --- a/lib/modules/Getopt.pmod +++ b/lib/modules/Getopt.pmod @@ -422,7 +422,7 @@ array(string) get_args(array(string) argv, void|int(-1..1) posix_me_harder, my_error( "Unknown option "+opt+".\n", throw_errors ); } else { - if(strlen(argv[i]) == 2) + if(sizeof(argv[i]) == 2) my_error( "Unknown option "+argv[i]+".\n", throw_errors ); my_error( "Unknown options "+argv[i]+".\n", throw_errors ); } diff --git a/lib/modules/Languages.pmod/PLIS.pmod b/lib/modules/Languages.pmod/PLIS.pmod index be0851b02c04bea36a91b9443789c5e4bd801d27..cb1b040f7944b94876e774e87c561cef26e60637 100644 --- a/lib/modules/Languages.pmod/PLIS.pmod +++ b/lib/modules/Languages.pmod/PLIS.pmod @@ -424,7 +424,7 @@ class Parser (string buffer) mixed _read() { - if (!strlen(buffer)) + if (!sizeof(buffer)) { return 0; } @@ -432,27 +432,27 @@ class Parser (string buffer) if (a = space_re->split(buffer) || comment_re->split(buffer)) { // werror(sprintf("Ignoring space and comments: '%s'\n", a[0])); - buffer = buffer[strlen(a[0])..]; + buffer = buffer[sizeof(a[0])..]; return _read(); } if (a = number_re->split(buffer)) { // werror("Scanning number\n"); string s = `+(@ a); - buffer = buffer[ strlen(s) ..]; + buffer = buffer[ sizeof(s) ..]; return Number( (int)s ); } if (a = symbol_re->split(buffer)) { // werror("Scanning symbol\n"); - buffer = buffer[strlen(a[0])..]; + buffer = buffer[sizeof(a[0])..]; return make_symbol(a[0]); } if (a = string_re->split(buffer)) { // werror("Scanning string\n"); - buffer = buffer[strlen(a[0])..]; - return String(replace(a[0][1 .. strlen(a[0]) - 2], + buffer = buffer[sizeof(a[0])..]; + return String(replace(a[0][1 .. sizeof(a[0]) - 2], ({ "\\\\", "\\\"", "\\n" }), ({ "\\", "\"", "\n"}) ) ); } @@ -469,7 +469,7 @@ class Parser (string buffer) buffer = buffer[1..]; return c; case '#': - if (strlen(buffer) < 2) + if (sizeof(buffer) < 2) return 0; c = buffer[1]; buffer = buffer[2..]; diff --git a/lib/modules/Locale.pmod/module.pmod b/lib/modules/Locale.pmod/module.pmod index 3ed0ac240e46d3f8b1d40b95c69b211092435420..59067aa702b68d76b36b0ed3aff93273e3180353 100644 --- a/lib/modules/Locale.pmod/module.pmod +++ b/lib/modules/Locale.pmod/module.pmod @@ -187,12 +187,12 @@ class LocaleObject int size=2*64+8; //Two mappings and a timestamp foreach(indices(bindings), string|int id) { size+=8; - if(stringp(id)) size+=strlen(id); + if(stringp(id)) size+=sizeof(id); else size+=4; - size+=strlen(bindings[id]); + size+=sizeof(bindings[id]); } size+=32*sizeof(functions); // The actual functions are not included though... - size+=strlen( indices(functions)*"" ); + size+=sizeof( indices(functions)*"" ); return size; } diff --git a/lib/modules/MIME.pmod/module.pmod b/lib/modules/MIME.pmod/module.pmod index 46852f3e45d661b5f13b03baa4e410c17e71c575..c9d20cdcd06446af2dbb7dc532aa9223cab0956a 100644 --- a/lib/modules/MIME.pmod/module.pmod +++ b/lib/modules/MIME.pmod/module.pmod @@ -3,7 +3,7 @@ // RFC1521 functionality for Pike // // Marcus Comstedt 1996-1999 -// $Id: module.pmod,v 1.5 2002/12/12 20:50:14 marcus Exp $ +// $Id: module.pmod,v 1.6 2003/01/20 17:44:00 nilsson Exp $ //! RFC1521, the @b{Multipurpose Internet Mail Extensions@} memo, defines a @@ -928,7 +928,7 @@ class Message { data += "--"+boundary+"--\r\n"; } - headers["content-length"] = ""+strlen(data); + headers["content-length"] = ""+sizeof(data); return map( indices(headers), lambda(string hname){ @@ -1164,12 +1164,12 @@ int|object reconstruct_partial(array(object) collection) }, parts))); foreach(indices(reconstructed->headers), string h) { if(h != "message-id" && h != "encrypted" && h != "mime-version" && - h != "subject" && (strlen(h)<8 || h[0..7] != "content-")) + h != "subject" && (sizeof(h)<8 || h[0..7] != "content-")) m_delete(reconstructed->headers, h); } foreach(indices(enclosing_headers), string h) { if(h != "message-id" && h != "encrypted" && h != "mime-version" && - h != "subject" && (strlen(h)<8 || h[0..7] != "content-")) + h != "subject" && (sizeof(h)<8 || h[0..7] != "content-")) reconstructed->headers[h] = enclosing_headers[h]; } return reconstructed; diff --git a/lib/modules/Parser.pmod/C.pmod b/lib/modules/Parser.pmod/C.pmod index efdeb480ffdad9e7685e115ce4800e8b127586a6..82da60383107466d3303a3023763aa64817b713e 100644 --- a/lib/modules/Parser.pmod/C.pmod +++ b/lib/modules/Parser.pmod/C.pmod @@ -4,7 +4,7 @@ // // #pike __REAL_VERSION__ // -// $Id: C.pmod,v 1.37 2003/01/18 17:54:32 nilsson Exp $ +// $Id: C.pmod,v 1.38 2003/01/20 17:44:00 nilsson Exp $ mapping(string:string) global_groupings=(["{":"}","(":")","[":"]"]); @@ -231,8 +231,8 @@ array(string) split(string data, void|mapping state) { q=search(data,"\"",pos+1); s=search(data,"\\",pos+1); - if(q==-1) q=strlen(data)-1; - if(s==-1) s=strlen(data)-1; + if(q==-1) q=sizeof(data)-1; + if(s==-1) s=sizeof(data)-1; if(q<s) { @@ -460,7 +460,7 @@ string reconstitute_with_line_numbers(array(string|object(Token)|array) tokens) if((tok->line && tok->line != line) || (tok->file && tok->file != file)) { - if(strlen(ret) && ret[-1]!='\n') ret+="\n"; + if(sizeof(ret) && ret[-1]!='\n') ret+="\n"; line=tok->line; if(tok->file) file=tok->file; ret+=sprintf("#line %d %O\n",line,file); diff --git a/lib/modules/Parser.pmod/XML.pmod/DOM.pmod b/lib/modules/Parser.pmod/XML.pmod/DOM.pmod index 8ca2a4b6780881e03d8af3a01db76c85012bbacf..0de7c8849979263a2ecd07fa9ddd739c0d558dd3 100644 --- a/lib/modules/Parser.pmod/XML.pmod/DOM.pmod +++ b/lib/modules/Parser.pmod/XML.pmod/DOM.pmod @@ -500,7 +500,7 @@ class CharacterData } string get_data() { return get_node_value(); } void set_data(string data) { set_node_value(data); } - int get_length() { return strlen(get_data()); } + int get_length() { return sizeof(get_data()); } string substring_data(int offset, int count) { diff --git a/lib/modules/Parser.pmod/XML.pmod/NSTree.pmod b/lib/modules/Parser.pmod/XML.pmod/NSTree.pmod index 3389577309104d47332bc628a86c10c936b6cd63..fdaf083454751fe903e01b6291e0dfe823db73b4 100644 --- a/lib/modules/Parser.pmod/XML.pmod/NSTree.pmod +++ b/lib/modules/Parser.pmod/XML.pmod/NSTree.pmod @@ -209,7 +209,7 @@ class NSNode { break; case XML_ELEMENT: - if (!strlen(n->get_tag_name())) + if (!sizeof(n->get_tag_name())) break; data->add("<", n->get_xml_name()); @@ -236,7 +236,7 @@ class NSNode { lambda(Node n) { if (n->get_node_type() == XML_ELEMENT) if (n->count_children()) - if (strlen(n->get_tag_name())) + if (sizeof(n->get_tag_name())) data->add("</", n->get_xml_name(), ">"); }); diff --git a/lib/modules/Parser.pmod/XML.pmod/Tree.pmod b/lib/modules/Parser.pmod/XML.pmod/Tree.pmod index b267e9b3a80a8e6bbcdedef975e09580a44faafe..5d45bd138860be265bc4fd46503bc8b041732f2e 100644 --- a/lib/modules/Parser.pmod/XML.pmod/Tree.pmod +++ b/lib/modules/Parser.pmod/XML.pmod/Tree.pmod @@ -1,7 +1,7 @@ #pike __REAL_VERSION__ /* - * $Id: Tree.pmod,v 1.24 2002/11/29 21:36:48 nilsson Exp $ + * $Id: Tree.pmod,v 1.25 2003/01/20 17:44:00 nilsson Exp $ * */ @@ -64,7 +64,7 @@ string roxen_text_quote(string data) { if ((sscanf(data[pos..], "&%[^ <>;&];", string entity) == 1) && search(entity, ".") >= 0) { out += text_quote(data[opos..pos - 1]) + "&" + entity + ";"; - pos += strlen(entity) + 2; + pos += sizeof(entity) + 2; } else { out += text_quote(data[opos..pos]); pos++; @@ -601,7 +601,7 @@ class Node { break; case XML_ELEMENT: - if (!strlen(n->get_tag_name())) + if (!sizeof(n->get_tag_name())) break; data->add("<", n->get_tag_name()); if (mapping attr = n->get_attributes()) { @@ -626,7 +626,7 @@ class Node { case XML_PI: data->add("<?", n->get_tag_name()); string text = n->get_text(); - if (strlen(text)) + if (sizeof(text)) data->add(" ", text); data->add("?>"); break; @@ -643,7 +643,7 @@ class Node { if (n->get_node_type() == XML_ELEMENT) { if (n->count_children()) - if (strlen(n->get_tag_name())) + if (sizeof(n->get_tag_name())) data->add("</", n->get_tag_name(), ">"); } } @@ -791,14 +791,14 @@ private Node|int(0..0) buffer_text += child->get_text(); } else { // Process buffered text before this child is added - if (strlen(buffer_text)) { + if (sizeof(buffer_text)) { node->add_child(Node(XML_TEXT, "", 0, buffer_text)); buffer_text = ""; } node->add_child(child); } } - if (strlen(buffer_text)) + if (sizeof(buffer_text)) node->add_child(Node(XML_TEXT, "", 0, buffer_text)); return (node); diff --git a/lib/modules/Process.pmod b/lib/modules/Process.pmod index 12ca4dfe5036969e67c2168f54823948f08d0ac6..a7a59a603a46f25a1773723005db67c565b2c414 100644 --- a/lib/modules/Process.pmod +++ b/lib/modules/Process.pmod @@ -112,7 +112,7 @@ array(string) split_quoted_string(string s) ret[-1]+=x[e][1..]; while(x[++e][0]!='"') { - if(strlen(x[e])==1 && x[e][0]=='\\' && x[e+1][0]=='"') e++; + if(sizeof(x[e])==1 && x[e][0]=='\\' && x[e+1][0]=='"') e++; ret[-1]+=x[e]; } ret[-1]+=x[e][1..]; @@ -125,7 +125,7 @@ array(string) split_quoted_string(string s) break; case '\\': - if(strlen(x[e])>1) + if(sizeof(x[e])>1) { ret[-1]+=x[e][1..]; }else{ @@ -136,7 +136,7 @@ array(string) split_quoted_string(string s) case ' ': case '\t': case '\n': - while(strlen(x[e])==1) + while(sizeof(x[e])==1) { if(e+1 < sizeof(x)) { @@ -170,7 +170,7 @@ Process spawn(string s,object|void stdin,object|void stdout,object|void stderr, #if defined(__NT__) // if the command string s is not quoted, add double quotes to // make sure it is not modified by create_process - if (strlen(s) <= 1 || s[0] != '\"' || s[strlen(s)-1] != '\"') + if (sizeof(s) <= 1 || s[0] != '\"' || s[sizeof(s)-1] != '\"') s = "\"" + s + "\""; return create_process(({ "cmd", "/c", s }),data); #elif defined(__amigaos__) diff --git a/lib/modules/Protocols.pmod/DNS.pmod b/lib/modules/Protocols.pmod/DNS.pmod index 3ebf73652de31f29a129ea1de37d92920ec014a3..966ebda94b6c0cfca40832f3bfd3af919c8a4ecc 100644 --- a/lib/modules/Protocols.pmod/DNS.pmod +++ b/lib/modules/Protocols.pmod/DNS.pmod @@ -1,4 +1,4 @@ -// $Id: DNS.pmod,v 1.70 2002/12/23 18:59:54 grubba Exp $ +// $Id: DNS.pmod,v 1.71 2003/01/20 17:44:00 nilsson Exp $ // Not yet finished -- Fredrik Hubinette //! Domain Name System @@ -100,9 +100,9 @@ class protocol { string mklabel(string s) { - if(strlen(s)>63) + if(sizeof(s)>63) error("Too long component in domain name.\n"); - return sprintf("%c%s",strlen(s),s); + return sprintf("%c%s",sizeof(s),s); } static private string mkname(string|array(string) labels, int pos, @@ -119,7 +119,7 @@ class protocol if(pos<0x4000) comp[n]=pos; string l = mklabel(labels[0]); - return l + mkname(labels[1..], pos+strlen(l), comp); + return l + mkname(labels[1..], pos+sizeof(l), comp); } } @@ -145,11 +145,11 @@ class protocol case T_MX: return sprintf("%2c", entry->preference)+mkname(entry->mx, pos+2, c); case T_HINFO: - return sprintf("%1c%s%1c%s", strlen(entry->cpu||""), entry->cpu||"", - strlen(entry->os||""), entry->os||""); + return sprintf("%1c%s%1c%s", sizeof(entry->cpu||""), entry->cpu||"", + sizeof(entry->os||""), entry->os||""); case T_MINFO: string rmailbx = mkname(entry->rmailbx, pos, c); - return rmailbx + mkname(entry->emailbx, pos+strlen(rmailbx), c); + return rmailbx + mkname(entry->emailbx, pos+sizeof(rmailbx), c); case T_SRV: return sprintf("%2c%2c%2c", entry->priority, entry->weight, entry->port) + mkname(entry->target||"", pos+6, c); @@ -158,13 +158,13 @@ class protocol return sprintf("%@1c", (array(int))((entry->a||"0.0.0.0")/".")[0..3]); case T_SOA: string mname = mkname(entry->mname, pos, c); - return mname + mkname(entry->rname, pos+strlen(mname), c) + + return mname + mkname(entry->rname, pos+sizeof(mname), c) + sprintf("%4c%4c%4c%4c%4c", entry->serial, entry->refresh, entry->retry, entry->expire, entry->minimum); case T_TXT: return Array.map(stringp(entry->txt)? ({entry->txt}):(entry->txt||({})), lambda(string t) { - return sprintf("%1c%s", strlen(t), t); + return sprintf("%1c%s", sizeof(t), t); })*""; default: return ""; @@ -178,10 +178,10 @@ class protocol foreach(entries, mapping entry) { string e = mkname(entry->name, pos, comp)+ sprintf("%2c%2c%4c", entry->type, entry->cl, entry->ttl); - pos += strlen(e)+2; + pos += sizeof(e)+2; string rd = entry->rdata || mkrdata(entry, pos, comp); - res += e + sprintf("%2c", strlen(rd)) + rd; - pos += strlen(rd); + res += e + sprintf("%2c", sizeof(rd)) + rd; + pos += sizeof(rd); } return res; } @@ -202,14 +202,14 @@ class protocol mapping(string:int) c = ([]); if(qd) foreach(qd, mapping _qd) - r += mkname(_qd->name, strlen(r), c) + + r += mkname(_qd->name, sizeof(r), c) + sprintf("%2c%2c", _qd->type, _qd->cl); if(an) - r+=encode_entries(an, strlen(r), c); + r+=encode_entries(an, sizeof(r), c); if(ns) - r+=encode_entries(ns, strlen(r), c); + r+=encode_entries(ns, sizeof(r), c); if(ar) - r+=encode_entries(ar, strlen(r), c); + r+=encode_entries(ar, sizeof(r), c); return r; } @@ -301,7 +301,7 @@ class protocol array decode_entries(string s,int num, array(int) next) { array(string) ret=({}); - for(int e=0;e<num && next[0]<strlen(s);e++) + for(int e=0;e<num && next[0]<sizeof(s);e++) { mapping m=([]); m->name=decode_domain(s,next); @@ -402,7 +402,7 @@ class protocol m->ad=(m->c2>>5)&1; m->ra=(m->c2>>7)&1; - m->length=strlen(s); + m->length=sizeof(s); array(string) tmp=({}); int e; diff --git a/lib/modules/Protocols.pmod/HTTP.pmod/Query.pike b/lib/modules/Protocols.pmod/HTTP.pmod/Query.pike index 9614c22db08006cbe566cf03dae05e762219ef76..bced213c5885185774f1c00b91524f1a48a1943e 100644 --- a/lib/modules/Protocols.pmod/HTTP.pmod/Query.pike +++ b/lib/modules/Protocols.pmod/HTTP.pmod/Query.pike @@ -1,6 +1,6 @@ #pike __REAL_VERSION__ -// $Id: Query.pike,v 1.47 2002/11/29 01:09:27 nilsson Exp $ +// $Id: Query.pike,v 1.48 2003/01/20 17:44:00 nilsson Exp $ //! Open and execute an HTTP query. @@ -65,9 +65,9 @@ static void ponder_answer() if ((i=min(i,j))!=10000000) break; s=con->read(8192,1); - if (!s || s=="") { i=strlen(buf); break; } + if (!s || s=="") { i=sizeof(buf); break; } - i=strlen(buf)-3; + i=sizeof(buf)-3; buf+=s; } @@ -185,7 +185,7 @@ static void async_close() static void async_read(mixed dummy,string s) { #ifdef HTTP_QUERY_DEBUG - werror("-> %d bytes of data\n",strlen(s)); + werror("-> %d bytes of data\n",sizeof(s)); #endif buf+=s; @@ -289,7 +289,7 @@ void async_got_host(string server,int port) void async_fetch_read(mixed dummy,string data) { #ifdef HTTP_QUERY_DEBUG - werror("-> %d bytes of data\n",strlen(data)); + werror("-> %d bytes of data\n",sizeof(data)); #endif buf+=data; } @@ -475,7 +475,7 @@ this_program thread_request(string server, int port, string query, headers=mkmapping(Array.map(indices(headers),lower_case), values(headers)); - if (data!="") headers->content_length=strlen(data); + if (data!="") headers->content_length=sizeof(data); headers=headers_encode(headers); } @@ -534,7 +534,7 @@ object sync_request(string server, int port, string query, values( http_headers )); if(data != "") - http_headers->content_length = strlen( data ); + http_headers->content_length = sizeof( data ); http_headers = headers_encode( http_headers ); } @@ -571,7 +571,7 @@ object async_request(string server,int port,string query, headers=mkmapping(Array.map(indices(headers),lower_case), values(headers)); - if (data!="") headers->content_length=strlen(data); + if (data!="") headers->content_length=sizeof(data); headers=headers_encode(headers); } @@ -617,10 +617,10 @@ string data(int|void max_length) l=0x7fffffff; else { len -= discarded_bytes; - l=len-strlen(buf)+datapos; + l=len-sizeof(buf)+datapos; } - if(!zero_type(max_length) && l>max_length-strlen(buf)+datapos) - l = max_length-strlen(buf)+datapos; + if(!zero_type(max_length) && l>max_length-sizeof(buf)+datapos) + l = max_length-sizeof(buf)+datapos; if(l>0 && con) { if(headers->server == "WebSTAR") @@ -731,7 +731,7 @@ class PseudoFile con=_con; buf=_buf; len=_len; - if (!con) len=strlen(buf); + if (!con) len=sizeof(buf); } string read(int n) @@ -740,15 +740,15 @@ class PseudoFile if (len && p+n>len) n=len-p; - if (strlen(buf)<n && con) + if (sizeof(buf)<n && con) { - string s=con->read(n-strlen(buf)); + string s=con->read(n-sizeof(buf)); buf+=s; } s=buf[..n-1]; buf=buf[n..]; - p+=strlen(s); + p+=sizeof(s); return s; } @@ -787,8 +787,8 @@ object file(void|mapping newheader,void|mapping removeheader) if (zero_type(headers["content-length"])) len=0x7fffffff; else - len=strlen(protocol+" "+status+" "+status_desc)+2+ - strlen(hbuf)+2+(int)headers["content-length"]; + len=sizeof(protocol+" "+status+" "+status_desc)+2+ + sizeof(hbuf)+2+(int)headers["content-length"]; return PseudoFile(con, protocol+" "+status+" "+status_desc+"\r\n"+ hbuf+"\r\n"+buf[datapos..],len); @@ -796,7 +796,7 @@ object file(void|mapping newheader,void|mapping removeheader) if (zero_type(headers["content-length"])) len=0x7fffffff; else - len=strlen(headerbuf)+4+(int)h["content-length"]; + len=sizeof(headerbuf)+4+(int)h["content-length"]; return PseudoFile(con,buf,len); } diff --git a/lib/modules/Protocols.pmod/HTTP.pmod/Server.pmod/Request.pike b/lib/modules/Protocols.pmod/HTTP.pmod/Server.pmod/Request.pike index fd6f17ef303c9dbc14afba484b13f6876c0746d6..9414981dc846eabef4037092ca134aff3bb76247 100644 --- a/lib/modules/Protocols.pmod/HTTP.pmod/Server.pmod/Request.pike +++ b/lib/modules/Protocols.pmod/HTTP.pmod/Server.pmod/Request.pike @@ -130,7 +130,7 @@ static int parse_variables() if (request_type=="POST" && request_headers["content-type"]=="application/x-www-form-urlencoded") { - if ((int)request_headers["content-length"]<=strlen(buf)) + if ((int)request_headers["content-length"]<=sizeof(buf)) { parse_post(); return 1; @@ -163,8 +163,8 @@ static void read_cb_post(mixed dummy,string s) raw+=s; buf+=s; - if (strlen(buf)>=(int)request_headers["content-length"] || - strlen(buf)>MAXIMUM_REQUEST_SIZE) + if (sizeof(buf)>=(int)request_headers["content-length"] || + sizeof(buf)>MAXIMUM_REQUEST_SIZE) { my_fd->set_blocking(); populate_raw(); @@ -232,7 +232,7 @@ string make_response_header(mapping m) if (zero_type(m->size)) if (m->data) - m->size=strlen(m->data); + m->size=sizeof(m->data); else if (m->stat) m->size=m->stat->size; else @@ -276,7 +276,7 @@ void response_and_finish(mapping m, function|void _log_cb) if (m->file && m->size!=-1 && - m->size+strlen(header)<4096) // fit in buffer + m->size+sizeof(header)<4096) // fit in buffer { m->data=m->file->read(m->size); m->file->close(); @@ -329,7 +329,7 @@ Stdio.File send_fd=0; void send_write() { - if (strlen(send_buf)-send_pos<8192 && + if (sizeof(send_buf)-send_pos<8192 && send_fd) { string q=send_fd->read(131072); @@ -344,7 +344,7 @@ void send_write() send_pos=0; } } - else if (send_pos==strlen(send_buf) && !send_fd) + else if (send_pos==sizeof(send_buf) && !send_fd) { finish(); return; diff --git a/lib/modules/Protocols.pmod/IMAP.pmod/parse_line.pike b/lib/modules/Protocols.pmod/IMAP.pmod/parse_line.pike index ea73d0dfc6abae01703ed565b05fce5aca45850b..252c88d6135ffead7950394b8fabcf6734ecd0ee 100644 --- a/lib/modules/Protocols.pmod/IMAP.pmod/parse_line.pike +++ b/lib/modules/Protocols.pmod/IMAP.pmod/parse_line.pike @@ -27,7 +27,7 @@ void skip_whitespace() int eolp() { skip_whitespace(); - return !strlen(buffer); + return !sizeof(buffer); } #endif @@ -36,11 +36,11 @@ int get_number() { skip_whitespace(); - if (!strlen(buffer)) + if (!sizeof(buffer)) return -1; int i; - for(i = 0; i<strlen(buffer); i++) + for(i = 0; i<sizeof(buffer); i++) if ( (buffer[i] < '0') || ('9' < buffer[i]) ) break; @@ -66,7 +66,7 @@ string get_atom(int|void with_options) atom, buffer); werror(sprintf("=> atom: %O\n", atom)); - return strlen(atom) && atom; + return sizeof(atom) && atom; } string|object get_string() @@ -75,7 +75,7 @@ string|object get_string() skip_whitespace(); - if (!strlen(buffer)) + if (!sizeof(buffer)) return 0; switch(buffer[0]) @@ -100,9 +100,9 @@ string|object get_string() } case '{': { - if (buffer[strlen(buffer)-1..] != "}") + if (buffer[sizeof(buffer)-1..] != "}") return 0; - string n = buffer[1..strlen(buffer)-2]; + string n = buffer[1..sizeof(buffer)-2]; buffer = ""; if ( (sizeof(values(n) - values("0123456789"))) @@ -121,7 +121,7 @@ string|object get_astring() werror("get_astring: buffer = '%s'\n", buffer); skip_whitespace(); - if (!strlen(buffer)) + if (!sizeof(buffer)) return 0; switch(buffer[0]) { @@ -153,7 +153,7 @@ object get_set() mapping get_token(int eol, int accept_options) { skip_whitespace(); - if (!strlen(buffer)) + if (!sizeof(buffer)) return (eol == -1) && ([ "type" : "eol", "eol" : 1 ]); if (eol && (buffer[0] == eol)) @@ -188,19 +188,19 @@ mapping get_token(int eol, int accept_options) /* Reads a <start.size> suffix */ mapping get_range(mapping atom) { - if (!strlen(buffer) || (buffer[0] != '<')) + if (!sizeof(buffer) || (buffer[0] != '<')) return atom; buffer = buffer[1..]; int start = get_number(); - if ((start < 0) || !strlen(buffer) || (buffer[0] != '.')) + if ((start < 0) || !sizeof(buffer) || (buffer[0] != '.')) return 0; buffer = buffer[1..]; int size = get_number(); - if ((size <= 0) || !strlen(buffer) || (buffer[0] != '>')) + if ((size <= 0) || !sizeof(buffer) || (buffer[0] != '>')) return 0; buffer = buffer[1..]; @@ -217,7 +217,7 @@ array(string) get_flag_list() { skip_whitespace(); - if (!strlen(buffer) || (buffer[0] != '(') ) + if (!sizeof(buffer) || (buffer[0] != '(') ) return 0; buffer = buffer[1..]; @@ -234,7 +234,7 @@ array(string) get_flag_list() } skip_whitespace(); // This one shouldn't be needed, but... - if (!strlen(buffer)) + if (!sizeof(buffer)) return 0; if (buffer[0] = ')') @@ -259,7 +259,7 @@ array(string) get_flag_list() mapping get_simple_list(int max_depth) { skip_whitespace(); - if (!strlen(buffer)) + if (!sizeof(buffer)) return 0; if (buffer[0] == '(') { @@ -289,7 +289,7 @@ array do_parse_simple_list(int max_depth, int terminator) { skip_whitespace(); - if (!strlen(buffer)) + if (!sizeof(buffer)) return 0; if (buffer[0] == terminator) @@ -332,7 +332,7 @@ mapping get_atom_options(int max_depth) mapping res = ([ "type" : "atom", "atom" : atom ]); - if (!strlen(buffer) || (buffer[0] != '[')) + if (!sizeof(buffer) || (buffer[0] != '[')) { res->raw = atom; return res; @@ -355,20 +355,20 @@ mapping get_atom_options(int max_depth) option_start[..sizeof(option_start) - sizeof(buffer) - 1]; - if (!strlen(buffer) || (buffer[0] != '<')) + if (!sizeof(buffer) || (buffer[0] != '<')) return res; /* Parse <start.size> suffix */ buffer = buffer[1..]; int start = get_number(); - if ((start < 0) || !strlen(buffer) || (buffer[0] != '.')) + if ((start < 0) || !sizeof(buffer) || (buffer[0] != '.')) return 0; buffer = buffer[1..]; int size = get_number(); - if ((size < 0) || !strlen(buffer) || (buffer[0] != '>')) + if ((size < 0) || !sizeof(buffer) || (buffer[0] != '>')) return 0; buffer = buffer[1..]; diff --git a/lib/modules/Protocols.pmod/IMAP.pmod/server.pike b/lib/modules/Protocols.pmod/IMAP.pmod/server.pike index 28a269590c704d53f86bb220eff21650f8b5742b..396d0dc409602b097b600a5a12b409f2bc04cbd0 100644 --- a/lib/modules/Protocols.pmod/IMAP.pmod/server.pike +++ b/lib/modules/Protocols.pmod/IMAP.pmod/server.pike @@ -45,7 +45,7 @@ function(object:void) request_callback; void recv_command(string s) { - if (!strlen(s)) + if (!sizeof(s)) // Ignore empty lines. return; diff --git a/lib/modules/Protocols.pmod/IMAP.pmod/types.pmod b/lib/modules/Protocols.pmod/IMAP.pmod/types.pmod index b13f624ab5141c9e32b33e082184ec1b6f0aed0d..a9719b71e75d1cdbd9e3a8b1e6ecb0063ce17cc2 100644 --- a/lib/modules/Protocols.pmod/IMAP.pmod/types.pmod +++ b/lib/modules/Protocols.pmod/IMAP.pmod/types.pmod @@ -98,7 +98,7 @@ class imap_string if (!sizeof(array_sscanf(data, "%*[^\0-\037\\\"\177-\377]%s")[0])) return "\"" + replace(data, ({ "\"", "\\" }), ({ "\\\"", "\\\\" }) ) + "\""; else - return sprintf("{%d}\r\n%s", strlen(data), data); + return sprintf("{%d}\r\n%s", sizeof(data), data); } } @@ -134,7 +134,7 @@ class imap_number // Returns -1 on error. int string_to_number(string s) { - if (!strlen(s) || (strlen(s) > 9)) + if (!sizeof(s) || (sizeof(s) > 9)) return -1; if (sizeof(values(s) - ({ '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' }))) diff --git a/lib/modules/Protocols.pmod/IRC.pmod/Error.pmod b/lib/modules/Protocols.pmod/IRC.pmod/Error.pmod index b43c113d01f0244d8d0dacb5fdbababf3d499fcd..7e9f8c3fae63b61f0901b3d02dd77deaa8921a0c 100644 --- a/lib/modules/Protocols.pmod/IRC.pmod/Error.pmod +++ b/lib/modules/Protocols.pmod/IRC.pmod/Error.pmod @@ -13,7 +13,7 @@ class StdErr name=_name; __backtrace=backtrace(); while (!__backtrace[-1][0]|| - __backtrace[-1][0][strlen(__backtrace[-1][0])-11..] + __backtrace[-1][0][sizeof(__backtrace[-1][0])-11..] == "/Error.pmod") __backtrace=__backtrace[0..sizeof(__backtrace)-2]; } diff --git a/lib/modules/Protocols.pmod/IRC.pmod/Raw.pike b/lib/modules/Protocols.pmod/IRC.pmod/Raw.pike index c4ad9fd3ee8395ce32c66bb21a85527b47e8e47b..1b4aca41400afba9e17bc53b679c79acf5d806e7 100644 --- a/lib/modules/Protocols.pmod/IRC.pmod/Raw.pike +++ b/lib/modules/Protocols.pmod/IRC.pmod/Raw.pike @@ -72,7 +72,7 @@ void con_write_callback() while (sizeof(write_buf)) { int j=con->write(write_buf[0]); - if (j!=strlen(write_buf[0])) + if (j!=sizeof(write_buf[0])) { if (j==-1) { diff --git a/lib/modules/Protocols.pmod/Ident.pmod b/lib/modules/Protocols.pmod/Ident.pmod index b67d7b26f8be21d6654885eeb749e1946545755c..030ebbf53d3f4fba7b1524a63a39ad9043b217cf 100644 --- a/lib/modules/Protocols.pmod/Ident.pmod +++ b/lib/modules/Protocols.pmod/Ident.pmod @@ -1,6 +1,6 @@ // An implementation of the IDENT protocol, specified in RFC 931. // -// $Id: Ident.pmod,v 1.9 2000/09/28 03:38:50 hubbe Exp $ +// $Id: Ident.pmod,v 1.10 2003/01/20 17:44:00 nilsson Exp $ #pike __REAL_VERSION__ @@ -181,12 +181,12 @@ int|array (string) lookup(object fd) remote_fd->set_blocking(); string query = raddr[1]+","+laddr[1]+"\r\n"; int written; - if((written = remote_fd->write(query)) != strlen(query)) { + if((written = remote_fd->write(query)) != sizeof(query)) { destruct(remote_fd); throw(backtrace() +({ "Protocols.Ident: short write ("+written+")."})); } mixed response = remote_fd->gets();//0xefffffff, 1); - if(!response || !strlen(response)) + if(!response || !sizeof(response)) { destruct(remote_fd); throw(backtrace() +({ "Protocols.Ident: read failed."})); diff --git a/lib/modules/Protocols.pmod/LDAP.pmod/protocol.pike b/lib/modules/Protocols.pmod/LDAP.pmod/protocol.pike index 1926ab60f98754ae29f7f614596fc11d52893ba9..f60fd4e1b58b74679f0a085fd2535ac419a73ea6 100644 --- a/lib/modules/Protocols.pmod/LDAP.pmod/protocol.pike +++ b/lib/modules/Protocols.pmod/LDAP.pmod/protocol.pike @@ -2,7 +2,7 @@ // LDAP client protocol implementation for Pike. // -// $Id: protocol.pike,v 1.8 2002/07/22 16:15:40 bill Exp $ +// $Id: protocol.pike,v 1.9 2003/01/20 17:44:01 nilsson Exp $ // // Honza Petrous, hop@unibase.cz // @@ -79,9 +79,9 @@ int msglen = 0, ix, ofs; string s, shlp; - if(strlen(readbuf) < 2) + if(sizeof(readbuf) < 2) readbuf = ldapfd->read(2); // 1. byte = 0x0C, 2. byte = msglen - if (intp(readbuf) || (strlen(readbuf) < 2)) { + if (intp(readbuf) || (sizeof(readbuf) < 2)) { seterr (LDAP_TIMEOUT); DWRITE_HI("protocol.read_anwer: ERROR: connection timeout.\n"); THROW(({"LDAP: connection timeout.\n",backtrace()})); @@ -107,10 +107,10 @@ return; } ofs = (msglen & 0x7f) + 2; - ix = ofs - strlen(readbuf); + ix = ofs - sizeof(readbuf); if(ix > 0) s = ldapfd->read(ix); - if (!s || (strlen(s) < ix)) { + if (!s || (sizeof(s) < ix)) { seterr (LDAP_PROTOCOL_ERROR); THROW(({"LDAP: Protocol mismatch.\n",backtrace()})); //return(-ldap_errno); @@ -119,14 +119,14 @@ readbuf += s; msglen = 0; // !!! RESTRICTION: 2^32 !!! shlp = reverse(readbuf[2..ofs]); - for (ix=0; ix<strlen(shlp); ix++) { + for (ix=0; ix<sizeof(shlp); ix++) { msglen += shlp[ix]*(1<<(ix*8)); } } - ix = (ofs + msglen) - strlen(readbuf); + ix = (ofs + msglen) - sizeof(readbuf); if(ix > 0) s = ldapfd->read(ix); - if (!s || (strlen(s) < ix)) { + if (!s || (sizeof(s) < ix)) { seterr (LDAP_SERVER_DOWN); THROW(({"LDAP: connection closed by server.\n",backtrace()})); //return(-ldap_errno); @@ -148,7 +148,7 @@ int msglen, ix, ofs; string shlp; - if (strlen(readbuf) < 3) + if (sizeof(readbuf) < 3) return(0); // PDU have min. 3 bytes if (readbuf[0] != '0') @@ -159,16 +159,16 @@ if (msglen == 0x80) return(1); // forced execution ofs = (msglen & 0x7f) + 2; - ix = ofs - strlen(readbuf); + ix = ofs - sizeof(readbuf); if(ix > 0) return(0); // incomplete PDU msglen = 0; shlp = reverse(readbuf[2..ofs]); - for (ix=0; ix<strlen(shlp); ix++) { + for (ix=0; ix<sizeof(shlp); ix++) { msglen += shlp[ix]*(1<<(ix*8)); } } - ix = (ofs + msglen) - strlen(readbuf); + ix = (ofs + msglen) - sizeof(readbuf); if(ix > 0) return(0); // incomplete PDU diff --git a/lib/modules/Protocols.pmod/Line.pmod b/lib/modules/Protocols.pmod/Line.pmod index 736ed94fffa6b1d0d6f125b4a515d97b7b7f6bbe..7994a37dfd0cae077648593461c907d7fb631e51 100644 --- a/lib/modules/Protocols.pmod/Line.pmod +++ b/lib/modules/Protocols.pmod/Line.pmod @@ -1,5 +1,5 @@ /* - * $Id: Line.pmod,v 1.20 2002/11/26 21:39:51 grubba Exp $ + * $Id: Line.pmod,v 1.21 2003/01/20 17:44:00 nilsson Exp $ * * Line-buffered protocol handling. * @@ -391,7 +391,7 @@ class imap_style while(1) { if (handle_literal) { - if (strlen(read_buffer) < literal_length) + if (sizeof(read_buffer) < literal_length) return; string literal = read_buffer[..literal_length - 1]; read_buffer = read_buffer[literal_length..]; diff --git a/lib/modules/Protocols.pmod/LysKOM.pmod/Helper.pmod b/lib/modules/Protocols.pmod/LysKOM.pmod/Helper.pmod index 5a98a9d94342c6ae96fef54606731fa8c49834bf..58b0e5e6e3d2c6f79bf37e503a010f5f4aab0b10 100644 --- a/lib/modules/Protocols.pmod/LysKOM.pmod/Helper.pmod +++ b/lib/modules/Protocols.pmod/LysKOM.pmod/Helper.pmod @@ -9,7 +9,7 @@ string encode(mixed ... z) // encode arguments string H(string what) // encode hollerith { - return strlen(what)+"H"+what; + return sizeof(what)+"H"+what; } string B(int(0..1) ... z) // encode bitfield diff --git a/lib/modules/Protocols.pmod/LysKOM.pmod/Raw.pike b/lib/modules/Protocols.pmod/LysKOM.pmod/Raw.pike index 64b95df5c7b2b26cdbee916014594aed1cf783bf..a218739302f9331a539f5bc16c5b0b17e563b1c6 100644 --- a/lib/modules/Protocols.pmod/LysKOM.pmod/Raw.pike +++ b/lib/modules/Protocols.pmod/LysKOM.pmod/Raw.pike @@ -53,7 +53,7 @@ static inline int conwrite(string what) #ifdef LYSKOM_DEBUG werror("-> %O\n",what); #endif - int i=con->write(what)==strlen(what); + int i=con->write(what)==sizeof(what); if (!i) { werror("write failed!!!\n"); _exit(1); } return i; } @@ -367,7 +367,7 @@ array(array(mixed)|int) try_parse(string what) array stack=({}); - while (strlen(what)>1) + while (sizeof(what)>1) { string a,b; @@ -382,16 +382,16 @@ array(array(mixed)|int) try_parse(string what) if (b[0]=='H') // hollerith { - if (strlen(b)<=(int)a) + if (sizeof(b)<=(int)a) return ({0,0}); // incomplete res+=({b[1..(int)a]}); - len+=strlen(a)+strlen(res[-1])+2; + len+=sizeof(a)+sizeof(res[-1])+2; b=b[(int)a+1..]; } else // bitfield or int { res+=({a}); - len+=strlen(a)+1; + len+=sizeof(a)+1; } if (b=="") return ({0,0}); // incomplete diff --git a/lib/modules/Protocols.pmod/NNTP.pmod b/lib/modules/Protocols.pmod/NNTP.pmod index 4d16e8b5bc43782d3f84542def4429a0c1b53c6b..fc725775b36c474f7577d068c6932cfaeecdcb36 100644 --- a/lib/modules/Protocols.pmod/NNTP.pmod +++ b/lib/modules/Protocols.pmod/NNTP.pmod @@ -44,11 +44,11 @@ class protocol s=replace(s,"\r",""); foreach(s/"\n",string line) { - if(strlen(line) && line[0]=='.') + if(sizeof(line) && line[0]=='.') line="."+line+"\r\n"; else line=line+"\r\n"; - if(news::write(line) != strlen(line)) + if(news::write(line) != sizeof(line)) error("NNTP: Failed to write body.\n"); } news::write(".\r\n"); diff --git a/lib/modules/Protocols.pmod/TELNET.pmod b/lib/modules/Protocols.pmod/TELNET.pmod index 9fb2851bfaaf6ba2ba7698c300ef34b953e1bc4e..2e6cc1a01def729ca0d76f86e61bab55fcafb475 100644 --- a/lib/modules/Protocols.pmod/TELNET.pmod +++ b/lib/modules/Protocols.pmod/TELNET.pmod @@ -1,5 +1,5 @@ // -// $Id: TELNET.pmod,v 1.18 2002/03/09 18:55:50 nilsson Exp $ +// $Id: TELNET.pmod,v 1.19 2003/01/20 17:44:00 nilsson Exp $ // // The TELNET protocol as described by RFC 764 and others. // @@ -546,7 +546,7 @@ class protocol static void call_read_cb(string data) { DWRITE("Fnurgel!\n"); - if(read_cb && strlen(data)) read_cb(id,data); + if(read_cb && sizeof(data)) read_cb(id,data); } //! Callback called when normal data has been received. @@ -897,7 +897,7 @@ class Readline { if(!icanon) { - if(strlen(data)) read_cb(id,data); + if(sizeof(data)) read_cb(id,data); }else{ DWRITE(sprintf("Line callback... %O\n",data)); data=replace(data, @@ -1020,7 +1020,7 @@ class Readline }else{ if(prompt!=s) { - if(s[..strlen(prompt)-1]==prompt) + if(s[..sizeof(prompt)-1]==prompt) write(s); prompt=s; } diff --git a/lib/modules/Protocols.pmod/X.pmod/KeySyms.pmod b/lib/modules/Protocols.pmod/X.pmod/KeySyms.pmod index 0342669820c07d4928f8ac8a027462c561918a85..4659580901d25a88b9fed13968603643a42c1669 100644 --- a/lib/modules/Protocols.pmod/X.pmod/KeySyms.pmod +++ b/lib/modules/Protocols.pmod/X.pmod/KeySyms.pmod @@ -1,6 +1,6 @@ /* KeySyms.pmod * - * $Id: KeySyms.pmod,v 1.2 2002/06/16 17:55:46 nilsson Exp $ + * $Id: KeySyms.pmod,v 1.3 2003/01/20 17:44:01 nilsson Exp $ */ /* @@ -1547,13 +1547,13 @@ compose_state=""; return _LookupKeysym( keysym ); } - if(strlen(compose_state)>4) + if(sizeof(compose_state)>4) { string res=""; - while(strlen(compose_state) + while(sizeof(compose_state) && (sscanf(compose_state, "%4c%s", keysym, compose_state)==2)) res += _LookupKeysym( keysym ) || ""; - return strlen(res)?res:0; + return sizeof(res)?res:0; } compose_state=""; return _LookupKeysym( keysym ); diff --git a/lib/modules/Protocols.pmod/X.pmod/Requests.pmod b/lib/modules/Protocols.pmod/X.pmod/Requests.pmod index f2c2323fa73ab2dc20b6c76a5870318023d8a825..48d3c0ed41da5d046eabd0d2d60976bdd27ca9b1 100644 --- a/lib/modules/Protocols.pmod/X.pmod/Requests.pmod +++ b/lib/modules/Protocols.pmod/X.pmod/Requests.pmod @@ -1,6 +1,6 @@ /* Requests.pike * - * $Id: Requests.pmod,v 1.31 2002/01/15 22:47:11 nilsson Exp $ + * $Id: Requests.pmod,v 1.32 2003/01/20 17:44:01 nilsson Exp $ */ /* @@ -56,9 +56,9 @@ class request // Big requests extension. Will not work // if this extension is not present. - if((strlen(req)+1) > (65535*4)) - return sprintf("%c%c\0\0%4c%s", reqType, data, 1 + strlen(req) / 4, req); - return sprintf("%c%c%2c%s", reqType, data, 1 + strlen(req) / 4, req); + if((sizeof(req)+1) > (65535*4)) + return sprintf("%c%c\0\0%4c%s", reqType, data, 1 + sizeof(req) / 4, req); + return sprintf("%c%c%2c%s", reqType, data, 1 + sizeof(req) / 4, req); } mixed handle_reply(mapping reply) @@ -279,7 +279,7 @@ class InternAtom string to_string() { - return build_request(sprintf("%2c\0\0%s", strlen(name), name), + return build_request(sprintf("%2c\0\0%s", sizeof(name), name), onlyIfExists); } @@ -748,7 +748,7 @@ class PutImage // werror(sprintf("PutImage>to_string: %d, %d, %d, %d\n", // dst_x, dst_y, width, height)); string pad=""; - while(((strlen(data)+strlen(pad))%4)) pad += "\0"; + while(((sizeof(data)+sizeof(pad))%4)) pad += "\0"; pad = build_request(sprintf("%4c" "%4c" "%2c" "%2c" "%2c" "%2c" @@ -914,8 +914,8 @@ class QueryExtension string to_string() { string pad=""; - while(((strlen(name)+strlen(pad))%4)) pad += "\0"; - return build_request(sprintf("%2c\0\0%s%s", strlen(name),name,pad)); + while(((sizeof(name)+sizeof(pad))%4)) pad += "\0"; + return build_request(sprintf("%2c\0\0%s%s", sizeof(name),name,pad)); } mapping handle_reply(mapping reply) @@ -959,7 +959,7 @@ class ExtensionRequest string build_request(string req, void|int data) { - return sprintf("%c%c%2c%s", type, data, 1 + strlen(req) / 4, req); + return sprintf("%c%c%2c%s", type, data, 1 + sizeof(req) / 4, req); } @@ -976,7 +976,7 @@ class ExtensionRequest { string pad =""; if(!data) data = ""; - else while((strlen(data)+strlen(pad))%4) pad += "\0"; + else while((sizeof(data)+sizeof(pad))%4) pad += "\0"; return build_request(data+pad, code); } diff --git a/lib/modules/Protocols.pmod/X.pmod/Xlib.pmod b/lib/modules/Protocols.pmod/X.pmod/Xlib.pmod index 8b4f9354c18f29f0ca426e155ae891f79e934a83..b0af20db8c30ab4c4f23e75ff2c7b6924a3e00c6 100644 --- a/lib/modules/Protocols.pmod/X.pmod/Xlib.pmod +++ b/lib/modules/Protocols.pmod/X.pmod/Xlib.pmod @@ -1,6 +1,6 @@ /* Xlib.pmod * - * $Id: Xlib.pmod,v 1.47 2002/06/15 20:55:25 bill Exp $ + * $Id: Xlib.pmod,v 1.48 2003/01/20 17:44:01 nilsson Exp $ */ /* @@ -48,7 +48,7 @@ class rec_buffer int needs() { - return pad + expected - strlen(buffer); + return pad + expected - sizeof(buffer); } void add_data(string data) @@ -58,7 +58,7 @@ class rec_buffer string get_msg() { - if (strlen(buffer) < (expected + pad)) + if (sizeof(buffer) < (expected + pad)) return 0; string res = buffer[pad..pad+expected-1]; buffer = buffer[pad+expected..]; @@ -210,7 +210,7 @@ class Display void write_callback() { - if (strlen(buffer)) + if (sizeof(buffer)) { int written = write(buffer); if (written < 0) @@ -223,7 +223,7 @@ class Display { // werror(sprintf("Xlib: wrote '%s'\n", buffer[..written-1])); buffer = buffer[written..]; - // if (!strlen(buffer)) + // if (!sizeof(buffer)) // set_write_callback(0); } } @@ -231,9 +231,9 @@ class Display void send(string data) { - int ob = strlen(buffer); + int ob = sizeof(buffer); buffer += data; - if (!ob && strlen(buffer)) + if (!ob && sizeof(buffer)) { #if 0 set_write_callback(write_callback); @@ -250,7 +250,7 @@ class Display { /* FIXME: Not thread-safe */ set_blocking(); int written = write(buffer); - if (written < strlen(buffer)) + if (written < sizeof(buffer)) return 0; buffer = ""; @@ -734,7 +734,7 @@ class Display fields[1])); string host; - if (strlen(fields[0])) + if (sizeof(fields[0])) host = fields[0]; else { @@ -797,7 +797,7 @@ class Display /* Always uses network byteorder (big endian) */ string msg = sprintf("B\0%2c%2c%2c%2c\0\0%s%s", 11, 0, - strlen(auth_data->name), strlen(auth_data->data), + sizeof(auth_data->name), sizeof(auth_data->data), ._Xlib.pad(auth_data->name), ._Xlib.pad(auth_data->data)); state = STATE_WAIT_CONNECT; diff --git a/lib/modules/Protocols.pmod/X.pmod/_Xlib.pmod b/lib/modules/Protocols.pmod/X.pmod/_Xlib.pmod index fcc1f9c24911a31d43ad0f698aa55e0664ac0235..e6b41734cf3b5706c389603af30b4d25176e861d 100644 --- a/lib/modules/Protocols.pmod/X.pmod/_Xlib.pmod +++ b/lib/modules/Protocols.pmod/X.pmod/_Xlib.pmod @@ -1,6 +1,6 @@ /* _Xlib.pmod * - * $Id: _Xlib.pmod,v 1.17 2002/01/15 22:32:43 nilsson Exp $ + * $Id: _Xlib.pmod,v 1.18 2003/01/20 17:44:01 nilsson Exp $ * * Kluge, should be in Xlib.pmod */ @@ -31,7 +31,7 @@ object display_re = Regexp("^([^:]*):([0-9]+)(.[0-9]+|)$"); string pad(string s) { - return s + ({ "", "\0\0\0", "\0\0", "\0" })[strlen(s) % 4]; + return s + ({ "", "\0\0\0", "\0\0", "\0" })[sizeof(s) % 4]; } array(string) window_attributes = diff --git a/lib/modules/Remote.pmod/connection.pike b/lib/modules/Remote.pmod/connection.pike index 929edd0aa20d958f5f556b6c59c92fd752b08ea7..b4d87a51b2be3e794538c5897dfe97625332672b 100644 --- a/lib/modules/Remote.pmod/connection.pike +++ b/lib/modules/Remote.pmod/connection.pike @@ -55,8 +55,8 @@ int connect(string host, int port, void|int timeout) con->set_nonblocking(); for (;;) { - s += (con->read(24-strlen(s),1)||""); - if (strlen(s)==24) break; + s += (con->read(24-sizeof(s),1)||""); + if (sizeof(s)==24) break; sleep(0.02); if (time()>end_time) { @@ -258,7 +258,7 @@ void send(string s) #else string ob = write_buffer; write_buffer += s; - if(!strlen(ob)) + if(!sizeof(ob)) write_some(); #endif } @@ -301,7 +301,7 @@ void return_error(int refno, mixed err) void return_value(int refno, mixed val) { string s = encode_value(ctx->encode_return(refno, val)); - DEBUGMSG("return "+strlen(s)+" bytes ["+refno+"]\n"); + DEBUGMSG("return "+sizeof(s)+" bytes ["+refno+"]\n"); send(sprintf("%4c%s", sizeof(s), s)); } @@ -365,7 +365,7 @@ void read_some(int ignore, string s) DEBUGMSG("read "+sizeof(s)+" bytes\n"); read_buffer += s; DEBUGMSG("has "+sizeof(read_buffer)+" bytes\n"); - if(!strlen(read_buffer)) return; + if(!sizeof(read_buffer)) return; if (!request_size && sizeof(read_buffer) > 4) { @@ -438,7 +438,7 @@ int read_once() { if (closed) return 0; string s = con->read( 8192, 1 ); - if( !s || !strlen(s) ) + if( !s || !sizeof(s) ) { closed_connection( 0 ); return 0; @@ -453,7 +453,7 @@ void write_thread() DEBUGMSG("write_thread\n"); while( write_some() ) { Thread.MutexKey lock = write_buffer_cond_mutex->lock(); - if(!(strlen(write_buffer) || closed)) { + if(!(sizeof(write_buffer) || closed)) { if (want_close) try_close(); write_buffer_cond->wait(lock); } diff --git a/lib/modules/SSL.pmod/cipher.pike b/lib/modules/SSL.pmod/cipher.pike index 2fbdb84723942537efa503763143799734d87d38..40b7058b721a4e519c0dca809662a8359c9b2564 100644 --- a/lib/modules/SSL.pmod/cipher.pike +++ b/lib/modules/SSL.pmod/cipher.pike @@ -1,6 +1,6 @@ #pike __REAL_VERSION__ -/* $Id: cipher.pike,v 1.20 2002/06/11 18:01:04 mast Exp $ +/* $Id: cipher.pike,v 1.21 2003/01/20 17:44:01 nilsson Exp $ * */ @@ -64,7 +64,7 @@ class mac_sha { string s = sprintf("%~8s%c%2c%s", "\0\0\0\0\0\0\0\0", seq_num->digits(256), - packet->content_type, strlen(packet->fragment), + packet->content_type, sizeof(packet->fragment), packet->fragment); #ifdef SSL3_DEBUG_CRYPT // werror(sprintf("SSL.cipher: hashing %O\n", s)); @@ -107,7 +107,7 @@ class mac_hmac_sha { "\0\0\0\0\0\0\0\0", seq_num->digits(256), packet->content_type, packet->protocol_version[0],packet->protocol_version[1], - strlen(packet->fragment), + sizeof(packet->fragment), packet->fragment); return hmac(secret)(s); @@ -146,8 +146,8 @@ static string P_hash(object hashfn,int hlen,string secret,string seed,int len) { string prf(string secret,string label,string seed,int len) { - string s1=secret[..(int)(ceil(strlen(secret)/2.0)-1)]; - string s2=secret[(int)(floor(strlen(secret)/2.0))..]; + string s1=secret[..(int)(ceil(sizeof(secret)/2.0)-1)]; + string s2=secret[(int)(floor(sizeof(secret)/2.0))..]; string a=P_hash(Crypto.md5,16,s1,label+seed,len); string b=P_hash(Crypto.sha,20,s2,label+seed,len); diff --git a/lib/modules/SSL.pmod/connection.pike b/lib/modules/SSL.pmod/connection.pike index 4aa1c217db8f82910c4873362b1f6c9cd3ca7e46..1ddb1902f2482395d1d4d09973a6410b4ba2c340 100644 --- a/lib/modules/SSL.pmod/connection.pike +++ b/lib/modules/SSL.pmod/connection.pike @@ -1,6 +1,6 @@ #pike __REAL_VERSION__ -/* $Id: connection.pike,v 1.23 2002/12/06 20:31:06 grubba Exp $ +/* $Id: connection.pike,v 1.24 2003/01/20 17:44:01 nilsson Exp $ * * SSL packet layer */ @@ -96,7 +96,7 @@ void send_packet(object packet, int|void priority) { #ifdef SSL3_FRAGDEBUG - werror(" SSL.connection->send_packet: strlen(packet)="+strlen(packet)+"\n"); + werror(" SSL.connection->send_packet: sizeof(packet)="+sizeof(packet)+"\n"); #endif if (!priority) priority = ([ PACKET_alert : PRI_alert, @@ -283,7 +283,7 @@ string|int got_data(string|int s) mixed err = 0; alert_buffer += packet->fragment; for (i = 0; - !err && ((strlen(alert_buffer) - i) >= 2); + !err && ((sizeof(alert_buffer) - i) >= 2); i+= 2) err = handle_alert(alert_buffer[i..i+1]); @@ -296,7 +296,7 @@ string|int got_data(string|int s) { int i; int err; - for (i = 0; (i < strlen(packet->fragment)); i++) + for (i = 0; (i < sizeof(packet->fragment)); i++) { err = handle_change_cipher(packet->fragment[i]); #ifdef SSL3_DEBUG @@ -320,10 +320,10 @@ string|int got_data(string|int s) int len; handshake_buffer += packet->fragment; - while (strlen(handshake_buffer) >= 4) + while (sizeof(handshake_buffer) >= 4) { sscanf(handshake_buffer, "%*c%3c", len); - if (strlen(handshake_buffer) < (len + 4)) + if (sizeof(handshake_buffer) < (len + 4)) break; err = handle_handshake(handshake_buffer[0], handshake_buffer[4..len + 3], diff --git a/lib/modules/SSL.pmod/handshake.pike b/lib/modules/SSL.pmod/handshake.pike index ede0210a08f897fc05ae404913683f4b4a83a0ac..4a10888b389733140b66f75b272895c7b35620e3 100644 --- a/lib/modules/SSL.pmod/handshake.pike +++ b/lib/modules/SSL.pmod/handshake.pike @@ -1,6 +1,6 @@ #pike __REAL_VERSION__ -/* $Id: handshake.pike,v 1.29 2002/03/20 16:40:01 nilsson Exp $ +/* $Id: handshake.pike,v 1.30 2003/01/20 17:44:01 nilsson Exp $ * */ @@ -105,7 +105,7 @@ object handshake_packet(int type, string data) /* Perhaps one need to split large packages? */ object packet = Packet(); packet->content_type = PACKET_handshake; - packet->fragment = sprintf("%c%3c%s", type, strlen(data), data); + packet->fragment = sprintf("%c%3c%s", type, sizeof(data), data); handshake_messages += packet->fragment; return packet; } @@ -236,7 +236,7 @@ object client_key_exchange_packet() data = (temp_key || context->rsa)->encrypt(premaster_secret); if(version[1]==1) - data=sprintf("%2c",strlen(data))+data; + data=sprintf("%2c",sizeof(data))+data; break; case KE_dhe_dss: @@ -295,7 +295,7 @@ int reply_new_session(array(int) cipher_suites, array(int) compression_methods) { object struct = Struct(); - int len = `+( @ Array.map(context->certificates, strlen)); + int len = `+( @ Array.map(context->certificates, sizeof)); #ifdef SSL3_DEBUG // werror(sprintf("SSL.handshake: certificate_message size %d\n", len)); #endif @@ -316,7 +316,7 @@ int reply_new_session(array(int) cipher_suites, array(int) compression_methods) object struct = Struct(); struct->put_var_uint_array(context->preferred_auth_methods, 1, 1); - int len = `+(@ Array.map(authorities, strlen)); + int len = `+(@ Array.map(authorities, sizeof)); struct->put_uint(len + 2 * sizeof(authorities), 2); foreach(authorities, string auth) struct->put_var_string(auth, 2); @@ -375,7 +375,7 @@ string server_derive_master_secret(string data) #endif case KE_dhe_dss: case KE_dhe_rsa: - if (!strlen(data)) + if (!sizeof(data)) { /* Implicit encoding; Should never happen unless we have * requested and received a client certificate of type @@ -415,7 +415,7 @@ string server_derive_master_secret(string data) werror(sprintf("encrypted premaster_secret: '%O'\n", data)); #endif if(version[1] == 1) { - if(strlen(data)-2 != data[0]*256+data[1]) { + if(sizeof(data)-2 != data[0]*256+data[1]) { premaster_secret = context->random(48); rsa_message_was_bad = 1; } @@ -427,7 +427,7 @@ string server_derive_master_secret(string data) werror(sprintf("premaster_secret: '%O'\n", premaster_secret)); #endif if (!premaster_secret - || (strlen(premaster_secret) != 48) + || (sizeof(premaster_secret) != 48) || (premaster_secret[0] != 3)) { @@ -533,7 +533,7 @@ string describe_type(int i) void printHex(string buf) { int i; string res=""; - for(i=0; i< strlen(buf) ; i++) { + for(i=0; i< sizeof(buf) ; i++) { int data=buf[i]; res+=sprintf("%02x ",data&0xff); } @@ -559,7 +559,7 @@ int(-1..1) handle_handshake(int type, string data, string raw) #ifdef SSL3_DEBUG_HANDSHAKE_STATE werror("SSL.handshake: state %s, type %s\n", describe_state(handshake_state), describe_type(type)); - werror("strlen(data)="+strlen(data)+"\n"); + werror("sizeof(data)="+sizeof(data)+"\n"); #endif switch(handshake_state) @@ -626,10 +626,10 @@ int(-1..1) handle_handshake(int type, string data, string raw) werror(sprintf("SSL.handshake->handle_handshake: " "Version %d.%d hello detected\n", @version)); - if (strlen(id)) + if (sizeof(id)) werror(sprintf("SSL.handshake: Looking up session %O\n", id)); #endif - session = strlen(id) && context->lookup_session(id); + session = sizeof(id) && context->lookup_session(id); if (session) { #ifdef SSL3_DEBUG @@ -1055,7 +1055,7 @@ int(-1..1) handle_handshake(int type, string data, string raw) { object struct = Struct(); - int len = `+( @ Array.map(context->certificates, strlen)); + int len = `+( @ Array.map(context->certificates, sizeof)); #ifdef SSL3_DEBUG // werror(sprintf("SSL.handshake: certificate_message size %d\n", len)); #endif diff --git a/lib/modules/SSL.pmod/https.pike b/lib/modules/SSL.pmod/https.pike index 25a1482e3e7cbc3313578b45cef8e392ebcd0690..5728495e2e98f9a102d0debd6560e171e345f50c 100644 --- a/lib/modules/SSL.pmod/https.pike +++ b/lib/modules/SSL.pmod/https.pike @@ -1,6 +1,6 @@ #pike __REAL_VERSION__ -/* $Id: https.pike,v 1.12 2002/03/20 16:40:01 nilsson Exp $ +/* $Id: https.pike,v 1.13 2003/01/20 17:44:01 nilsson Exp $ * * dummy https server */ @@ -46,7 +46,7 @@ class conn { void write_callback() { - if (index < strlen(message)) + if (index < sizeof(message)) { int written = sslfile->write(message[index..]); if (written > 0) @@ -54,7 +54,7 @@ class conn { else sslfile->close(); } - if (index == strlen(message)) + if (index == sizeof(message)) sslfile->close(); } diff --git a/lib/modules/SSL.pmod/packet.pike b/lib/modules/SSL.pmod/packet.pike index 89d2ac5f94b2f3e3dd0464fdc6eaccbae14e6ca8..c693b8135c58bdf13932fc777e199cd76728bbb3 100644 --- a/lib/modules/SSL.pmod/packet.pike +++ b/lib/modules/SSL.pmod/packet.pike @@ -1,6 +1,6 @@ #pike __REAL_VERSION__ -/* $Id: packet.pike,v 1.11 2002/03/20 16:40:01 nilsson Exp $ +/* $Id: packet.pike,v 1.12 2003/01/20 17:44:01 nilsson Exp $ * * SSL Record Layer */ @@ -38,7 +38,7 @@ void create(void|int extra) object check_size(int version, int|void extra) { marginal_size = extra; - return (strlen(fragment) > (PACKET_MAX_SIZE + extra)) + return (sizeof(fragment) > (PACKET_MAX_SIZE + extra)) ? Alert(ALERT_fatal, ALERT_unexpected_message, version) : 0; } @@ -52,16 +52,16 @@ object|string recv(string data, int version) { #ifdef SSL3_FRAGDEBUG - werror(" SSL.packet->recv: strlen(data)="+strlen(data)+"\n"); + werror(" SSL.packet->recv: sizeof(data)="+sizeof(data)+"\n"); #endif buffer += data; - while (strlen(buffer) >= needed_chars) + while (sizeof(buffer) >= needed_chars) { #ifdef SSL3_DEBUG // werror(sprintf("SSL.packet->recv: needed = %d, avail = %d\n", -// needed_chars, strlen(buffer))); +// needed_chars, sizeof(buffer))); #endif if (needed_chars == HEADER_SIZE) { @@ -130,10 +130,10 @@ string send() werror(sprintf("SSL.packet->send: received version %d.%d packet\n", @ protocol_version)); #endif - if (strlen(fragment) > (PACKET_MAX_SIZE + marginal_size)) + if (sizeof(fragment) > (PACKET_MAX_SIZE + marginal_size)) error( "SSL.packet->send: maximum packet size exceeded\n" ); return sprintf("%c%c%c%2c%s", content_type, @protocol_version, - strlen(fragment), fragment); + sizeof(fragment), fragment); } diff --git a/lib/modules/SSL.pmod/session.pike b/lib/modules/SSL.pmod/session.pike index 61e87ee724bc254e2307550973e1fcb6e7f0154f..612d1ff4080d55043c95e9c98ad56b4a9cf0e580 100644 --- a/lib/modules/SSL.pmod/session.pike +++ b/lib/modules/SSL.pmod/session.pike @@ -1,6 +1,6 @@ #pike __REAL_VERSION__ -/* $Id: session.pike,v 1.20 2002/03/20 16:40:02 nilsson Exp $ +/* $Id: session.pike,v 1.21 2003/01/20 17:44:01 nilsson Exp $ * */ @@ -85,7 +85,7 @@ string generate_key_block(string client_random, string server_random,array(int) string key = ""; if(version[1]==0) { - while (strlen(key) < required) + while (sizeof(key) < required) { i++; string cookie = replace(allocate(i), 0, sprintf("%c", 64+i)) * ""; @@ -110,9 +110,9 @@ string generate_key_block(string client_random, string server_random,array(int) void printKey(string name , string key) { string res=""; - res+=sprintf("%s: len:%d type:%d \t\t",name,strlen(key),0); + res+=sprintf("%s: len:%d type:%d \t\t",name,sizeof(key),0); /* return; */ - for(int i=0;i<strlen(key);i++) { + for(int i=0;i<sizeof(key);i++) { int d=key[i]; res+=sprintf("%02x ",d&0xff); } @@ -166,7 +166,7 @@ array generate_keys(string client_random, string server_random,array(int) versio string iv_block=prf("","IV block",client_random+server_random,2*cipher_spec->iv_size); keys[4]=iv_block[..cipher_spec->iv_size-1]; keys[5]=iv_block[cipher_spec->iv_size..]; - werror("strlen(keys[4]):"+strlen(keys[4])+" strlen(keys[5]):"+strlen(keys[4])+"\n"); + werror("sizeof(keys[4]):"+sizeof(keys[4])+" sizeof(keys[5]):"+sizeof(keys[4])+"\n"); } } diff --git a/lib/modules/SSL.pmod/sslfile.pike b/lib/modules/SSL.pmod/sslfile.pike index 0e271fc025356d20c07e8a1926f08cccbea7c8fd..2faff3cefc689b7f08a2542f63b7f995e92fe5d7 100644 --- a/lib/modules/SSL.pmod/sslfile.pike +++ b/lib/modules/SSL.pmod/sslfile.pike @@ -1,6 +1,6 @@ #pike __REAL_VERSION__ -/* $Id: sslfile.pike,v 1.50 2002/11/29 01:22:14 nilsson Exp $ +/* $Id: sslfile.pike,v 1.51 2003/01/20 17:44:01 nilsson Exp $ * */ @@ -195,14 +195,14 @@ string|int read(string|int ...args) { string res=""; int leftToRead=nbytes; - if(strlen(read_buffer)) { - if(leftToRead<=strlen(read_buffer)) { + if(sizeof(read_buffer)) { + if(leftToRead<=sizeof(read_buffer)) { res=read_buffer[..leftToRead-1]; read_buffer=read_buffer[leftToRead..]; return res; } else { res=read_buffer; - leftToRead-=strlen(read_buffer); + leftToRead-=sizeof(read_buffer); if(notall) { return res; } @@ -216,14 +216,14 @@ string|int read(string|int ...args) { while(stringp(data)) { res+=data; - leftToRead-=strlen(data); + leftToRead-=sizeof(data); if(leftToRead<=0) break; if(notall) return res; data=got_data(read_blocking_packet()); } if(leftToRead<0) { - read_buffer=data[strlen(data)+leftToRead..]; + read_buffer=data[sizeof(data)+leftToRead..]; return res[0..args[0]-1]; } else { read_buffer=""; @@ -250,10 +250,10 @@ int write(string|array(string) s) } int call_write = !sizeof (write_buffer); - int len = strlen(s); + int len = sizeof(s); object packet; int res; - while(strlen(s)) + while(sizeof(s)) { packet = Packet(); packet->content_type = PACKET_application_data; @@ -291,7 +291,7 @@ private int|string read_blocking_packet() { return -1; } - if(strlen(header)!=5) { + if(sizeof(header)!=5) { return 1; } @@ -305,7 +305,7 @@ private void write_blocking() { int res = queue_write(); - while(strlen(write_buffer) && socket) { + while(sizeof(write_buffer) && socket) { int written = socket->write(write_buffer); if (written > 0) { @@ -339,7 +339,7 @@ private void ssl_read_callback(mixed id, string s) } read_buffer += data; - if (!blocking && read_callback && strlen(read_buffer)) + if (!blocking && read_callback && sizeof(read_buffer)) { string received = read_buffer; read_buffer = ""; @@ -379,7 +379,7 @@ private void ssl_write_callback(mixed id) handshake_finished, blocking, write_callback)); #endif - if (strlen(write_buffer)) + if (sizeof(write_buffer)) { int written = socket->write(write_buffer); if (written > 0) @@ -393,7 +393,7 @@ private void ssl_write_callback(mixed id) #endif die(-1); } - if (strlen(write_buffer)) + if (sizeof(write_buffer)) return; } @@ -406,7 +406,7 @@ private void ssl_write_callback(mixed id) werror(sprintf("SSL.sslport->ssl_write_callback: res = '%O'\n", res)); #endif - if (strlen(write_buffer)) + if (sizeof(write_buffer)) return; if ( !res && connected && !blocking && write_callback) @@ -421,7 +421,7 @@ private void ssl_write_callback(mixed id) } res = queue_write(); - if (strlen(write_buffer)) + if (sizeof(write_buffer)) return; } if (socket) @@ -469,7 +469,7 @@ void set_read_callback(function(mixed,string:void) r) werror("SSL.sslport: set_read_callback\n"); #endif read_callback = r; - if (strlen(read_buffer)&& socket) + if (sizeof(read_buffer)&& socket) ssl_read_callback(socket->query_id(), ""); } @@ -523,7 +523,7 @@ void set_nonblocking(function ...args) blocking = 0; if (!socket) return; socket->set_nonblocking(ssl_read_callback,ssl_write_callback,ssl_close_callback); - if (strlen(read_buffer)) + if (sizeof(read_buffer)) ssl_read_callback(socket->query_id(), ""); } diff --git a/lib/modules/SSL.pmod/state.pike b/lib/modules/SSL.pmod/state.pike index 237a06183f0edd0c4a422fed15b5d66d6339dc64..c01a2e66f803087c16566007b498899ad971102b 100644 --- a/lib/modules/SSL.pmod/state.pike +++ b/lib/modules/SSL.pmod/state.pike @@ -1,6 +1,6 @@ #pike __REAL_VERSION__ -/* $Id: state.pike,v 1.14 2002/03/20 16:40:02 nilsson Exp $ +/* $Id: state.pike,v 1.15 2003/01/20 17:44:01 nilsson Exp $ * */ @@ -40,7 +40,7 @@ void create(object s) string tls_pad(string data,int blocksize ) { // werror("Blocksize:"+blocksize+"\n"); - int plen=(blocksize-(strlen(data)+1)%blocksize)%blocksize; + int plen=(blocksize-(sizeof(data)+1)%blocksize)%blocksize; string res=data + sprintf("%c",plen)*plen+sprintf("%c",plen); return res; } @@ -79,7 +79,7 @@ object decrypt_packet(object packet,int version) #ifdef SSL3_DEBUG_CRYPT werror("SSL.state: Trying decrypt..\n"); // werror("SSL.state: The encrypted packet is:"+sprintf("%O\n",packet->fragment)); - werror("strlen of the encrypted packet is:"+strlen(packet->fragment)+"\n"); + werror("sizeof of the encrypted packet is:"+sizeof(packet->fragment)+"\n"); #endif msg=packet->fragment; @@ -106,7 +106,7 @@ object decrypt_packet(object packet,int version) #ifdef SSL3_DEBUG_CRYPT werror("SSL.state: Trying mac verification...\n"); #endif - int length = strlen(packet->fragment) - session->cipher_spec->hash_size; + int length = sizeof(packet->fragment) - session->cipher_spec->hash_size; string digest = packet->fragment[length ..]; packet->fragment = packet->fragment[.. length - 1]; diff --git a/lib/modules/Sql.pmod/postgres.pike b/lib/modules/Sql.pmod/postgres.pike index 227893e937722a05b8261641980df71f17d2d7a9..833dab9d4869eb6be248ebba7b6598d0a8fbb1aa 100644 --- a/lib/modules/Sql.pmod/postgres.pike +++ b/lib/modules/Sql.pmod/postgres.pike @@ -1,7 +1,7 @@ /* * This is part of the Postgres module for Pike. * - * $Id: postgres.pike,v 1.18 2002/11/27 15:40:34 mast Exp $ + * $Id: postgres.pike,v 1.19 2003/01/20 17:44:01 nilsson Exp $ * */ @@ -318,7 +318,7 @@ array(mapping(string:mixed)) list_fields (string table, void|string wild) { "AND a.attrelid = c.oid AND a.atttypid = t.oid ORDER BY attnum"); while (row=res->fetch_row()) { mapping m; - if (wild && strlen(wild) && !glob(wild,row[1])) + if (wild && sizeof(wild) && !glob(wild,row[1])) continue; row=row[1..]; row[4]=mkbool(row[4]); diff --git a/lib/modules/Standards.pmod/ASN1.pmod/Encode.pmod b/lib/modules/Standards.pmod/ASN1.pmod/Encode.pmod index 616cc77a77bdfd2d4bf2c4242ba640d2df8375bf..3eeb67b9c429bf37a7e634c512482d4aac342e1f 100644 --- a/lib/modules/Standards.pmod/ASN1.pmod/Encode.pmod +++ b/lib/modules/Standards.pmod/ASN1.pmod/Encode.pmod @@ -58,14 +58,14 @@ class asn1_object if (len < 0x80) return sprintf("%c", len); string s = Gmp.mpz(len)->digits(256); - if (strlen(s) >= 0x80) + if (sizeof(s) >= 0x80) error( "asn1.encode.asn1_object->encode_length: Max length exceeded.\n" ); - return sprintf("%c%s", strlen(s) | 0x80, s); + return sprintf("%c%s", sizeof(s) | 0x80, s); } string build_der(string contents) { - string data = encode_tag() + encode_length(strlen(contents)) + contents; + string data = encode_tag() + encode_length(sizeof(contents)) + contents; // WERROR(sprintf("build_der: '%s'\n", Crypto.string_to_hex(data))); WERROR(sprintf("build_der: '%s'\n", data)); return data; @@ -138,7 +138,7 @@ class asn1_bitstring { value = value[..(len + 7)/8]; unused = (- len) % 8; - value = sprintf("%s%c", value[..strlen(value)-2], value[-1] + value = sprintf("%s%c", value[..sizeof(value)-2], value[-1] & ({ 0xff, 0xfe, 0xfc, 0xf8, 0xf0, 0xe0, 0xc0, 0x80 })[unused]); } else { unused = 0; @@ -221,9 +221,9 @@ class asn1_set { for(int i = 0;; i++) { - if (i == strlen(r)) - return (i = strlen(s)) ? 0 : 1; - if (i == strlen(s)) + if (i == sizeof(r)) + return (i = sizeof(s)) ? 0 : 1; + if (i == sizeof(s)) return -1; if (r[i] < s[i]) return 1; diff --git a/lib/modules/Standards.pmod/ASN1.pmod/Types.pmod b/lib/modules/Standards.pmod/ASN1.pmod/Types.pmod index 0b8c4a5767089bd4136c441429f7e1b078339374..4ce77f217f4ee6f1a523c476b95d5c0e3d7d4338 100644 --- a/lib/modules/Standards.pmod/ASN1.pmod/Types.pmod +++ b/lib/modules/Standards.pmod/ASN1.pmod/Types.pmod @@ -1,5 +1,5 @@ /* - * $Id: Types.pmod,v 1.20 2002/12/05 18:08:05 bill Exp $ + * $Id: Types.pmod,v 1.21 2003/01/20 17:44:01 nilsson Exp $ * * Encodes various asn.1 objects according to the Distinguished * Encoding Rules (DER) */ @@ -126,14 +126,14 @@ class asn1_object if (len < 0x80) return sprintf("%c", len); string s = Gmp.mpz(len)->digits(256); - if (strlen(s) >= 0x80) + if (sizeof(s) >= 0x80) error( "asn1.encode.asn1_object->encode_length: Max length exceeded.\n" ); - return sprintf("%c%s", strlen(s) | 0x80, s); + return sprintf("%c%s", sizeof(s) | 0x80, s); } string build_der(string contents) { - string data = encode_tag() + encode_length(strlen(contents)) + contents; + string data = encode_tag() + encode_length(sizeof(contents)) + contents; // WERROR(sprintf("build_der: '%s'\n", Crypto.string_to_hex(data))); WERROR(sprintf("build_der: %O\n", data)); return data; @@ -274,7 +274,7 @@ class asn1_boolean string der_encode() { return build_der(value ? "\377" : "\0"); } object decode_primitive(string contents) { - if (strlen(contents) != 1) + if (sizeof(contents) != 1) { WERROR("asn1_boolean->decode_primitive: Bad length.\n"); return 0; @@ -330,7 +330,7 @@ class asn1_integer record_der_contents(contents); value = Gmp.mpz(contents, 256); if (contents[0] & 0x80) /* Negative */ - value -= pow(256, strlen(contents)); + value -= pow(256, sizeof(contents)); return this_object(); } @@ -376,7 +376,7 @@ class asn1_bit_string { value = value[..(len + 7)/8]; unused = (- len) % 8; - value = sprintf("%s%c", value[..strlen(value)-2], value[-1] + value = sprintf("%s%c", value[..sizeof(value)-2], value[-1] & ({ 0xff, 0xfe, 0xfc, 0xf8, 0xf0, 0xe0, 0xc0, 0x80 })[unused]); } else { unused = 0; @@ -476,7 +476,7 @@ class asn1_identifier else id = ({ 2, contents[0] - 80 }); int index = 1; - while(index < strlen(contents)) + while(index < sizeof(contents)) { int element = 0; do @@ -563,9 +563,9 @@ class asn1_set { for(int i = 0;; i++) { - if (i == strlen(r)) - return (i = strlen(s)) ? 0 : 1; - if (i == strlen(s)) + if (i == sizeof(r)) + return (i = sizeof(s)) ? 0 : 1; + if (i == sizeof(s)) return -1; if (r[i] < s[i]) return 1; diff --git a/lib/modules/Standards.pmod/EXIF.pmod b/lib/modules/Standards.pmod/EXIF.pmod index 614d45c5c85716dfae8644ec0fc759b43000f897..cf1a13ef43dbbce3d1a0af31f157ed6a0c3c4434 100644 --- a/lib/modules/Standards.pmod/EXIF.pmod +++ b/lib/modules/Standards.pmod/EXIF.pmod @@ -3,7 +3,7 @@ //! This module implements EXIF (Exchangeable image file format for //! Digital Still Cameras) 2.2 parsing. -// $Id: EXIF.pmod,v 1.15 2002/11/15 06:16:15 nilsson Exp $ +// $Id: EXIF.pmod,v 1.16 2003/01/20 17:44:01 nilsson Exp $ // Johan Sch�n <js@roxen.com>, July 2001. // Based on Exiftool by Robert F. Tobler <rft@cg.tuwien.ac.at>. // @@ -968,7 +968,7 @@ mapping get_properties(Stdio.File file) string skip=file->read(12); // skip the jpeg header - if (skip[strlen(skip)-6..]!="Exif\0\0") + if (skip[sizeof(skip)-6..]!="Exif\0\0") { skip=file->read(100); int z=search(skip,"Exif\0\0"); diff --git a/lib/modules/Standards.pmod/ID3.pmod b/lib/modules/Standards.pmod/ID3.pmod index 437b3fbeb296d82f28e03706e47dd7d415334d3e..b52be75e6aa0d27d7f272f1e09608e84dcf14cee 100644 --- a/lib/modules/Standards.pmod/ID3.pmod +++ b/lib/modules/Standards.pmod/ID3.pmod @@ -1,6 +1,6 @@ // ID3.pmod // -// $Id: ID3.pmod,v 1.7 2002/11/26 15:46:06 nilsson Exp $ +// $Id: ID3.pmod,v 1.8 2003/01/20 17:44:01 nilsson Exp $ // //! ID3 decoder/encoder. @@ -733,7 +733,7 @@ class Framev1 { void create(string buffer, string name) { id = name; data = FrameDatav1(buffer, name); - size = strlen(buffer); + size = sizeof(buffer); } } diff --git a/lib/modules/Standards.pmod/PKCS.pmod/PFX.pmod b/lib/modules/Standards.pmod/PKCS.pmod/PFX.pmod index 8bff6ab34f0069285514965766774a5e516e7cb3..d8721e01f59177dee923ba49d8d2ef2b94695ada 100644 --- a/lib/modules/Standards.pmod/PKCS.pmod/PFX.pmod +++ b/lib/modules/Standards.pmod/PKCS.pmod/PFX.pmod @@ -327,7 +327,7 @@ class PFX for(int i; i<count; i++) A = Crypto.sha()->update(A)->digest; - if (strlen(A)<needed) + if (sizeof(A)<needed) error("PFX: Step 6c) of section 6.1 not implemented.\n"); return A[..ndeded-1]; diff --git a/lib/modules/Standards.pmod/PKCS.pmod/Signature.pmod b/lib/modules/Standards.pmod/PKCS.pmod/Signature.pmod index 08b3475c23d86a028bc02329a8b85fc58332f056..ebd8c4e895d12565d9a8f3bcf9c0fbbb7e96d46a 100644 --- a/lib/modules/Standards.pmod/PKCS.pmod/Signature.pmod +++ b/lib/modules/Standards.pmod/PKCS.pmod/Signature.pmod @@ -15,6 +15,6 @@ string build_digestinfo(string msg, object hash) string id = hash->identifier(); return sprintf("%c%c%c%c%c%c%s%c%c%c%c%s", - 0x30, strlen(id) + strlen(d) + 8, 0x30, strlen(id) + 4, - 0x06, strlen(id), id, 0x05, 0x00, 0x04, strlen(d), d); + 0x30, sizeof(id) + sizeof(d) + 8, 0x30, sizeof(id) + 4, + 0x06, sizeof(id), id, 0x05, 0x00, 0x04, sizeof(d), d); } diff --git a/lib/modules/Stdio.pmod/Readline.pike b/lib/modules/Stdio.pmod/Readline.pike index c2dc084f5f601e8c77dcd8b68acb6e3ee72d8e70..c7eb96e538f90a92323c3108c0dca3d487c08ca1 100644 --- a/lib/modules/Stdio.pmod/Readline.pike +++ b/lib/modules/Stdio.pmod/Readline.pike @@ -1,4 +1,4 @@ -// $Id: Readline.pike,v 1.43 2002/11/26 15:06:46 jhs Exp $ +// $Id: Readline.pike,v 1.44 2003/01/20 17:44:01 nilsson Exp $ #pike __REAL_VERSION__ class OutputController @@ -165,10 +165,10 @@ class OutputController "~P","~Q","~R","~S","~T","~U","~V","~W", "~X","~Y","~Z","~[","~\\","~]","~^","~_", })); - return hide ? "*"*strlen(s) : s; + return hide ? "*"*sizeof(s) : s; #else - for(int i=0; i<strlen(s); i++) + for(int i=0; i<sizeof(s); i++) if(s[i]<' ') s = s[..i-1]+sprintf("^%c", s[i]+'@')+s[i+1..]; else if(s[i]==127) @@ -182,7 +182,7 @@ class OutputController static int width(string s) { - return strlen(s); + return sizeof(s); } static int escapified_width(string s) @@ -212,7 +212,7 @@ class OutputController { outfd->write(line); }else{ - l=strlen(line)-spos; + l=sizeof(line)-spos; outfd->write(line[..l-2]); } s=s[l..]; @@ -764,9 +764,9 @@ class DefaultEditKeys void delete_char_or_eof() { int p = _readline->getcursorpos(); - if (p<strlen(_readline->gettext())) + if (p<sizeof(_readline->gettext())) _readline->delete(p,p+1); - else if(!strlen(_readline->gettext())) + else if(!sizeof(_readline->gettext())) _readline->eof(); } @@ -787,13 +787,13 @@ class DefaultEditKeys void end_of_line() { - _readline->setcursorpos(strlen(_readline->gettext())); + _readline->setcursorpos(sizeof(_readline->gettext())); } void transpose_chars() { int p = _readline->getcursorpos(); - if (p<0 || p>=strlen(_readline->gettext())) + if (p<0 || p>=sizeof(_readline->gettext())) return; string c = _readline->gettext()[p-1..p]; _readline->delete(p-1, p+1); @@ -805,9 +805,9 @@ class DefaultEditKeys int p = _readline->getcursorpos(); int ep; string line = _readline->gettext(); - while(word_break_chars[ line[p..p] ] && p < strlen(line)) + while(word_break_chars[ line[p..p] ] && p < sizeof(line)) p++; - if(p >= strlen(line)) { + if(p >= sizeof(line)) { _readline->setcursorpos(p); return ({ 0, 0 }); } @@ -853,7 +853,7 @@ class DefaultEditKeys { int p = _readline->getcursorpos()-1; string line = _readline->gettext(); - if(p >= strlen(line)) p = strlen(line) - 1; + if(p >= sizeof(line)) p = sizeof(line) - 1; while(word_break_chars[ line[p..p] ] && p >= 0) // find first "non break char" p--; @@ -891,12 +891,12 @@ class DefaultEditKeys void kill_line() { - _readline->kill(_readline->getcursorpos(), strlen(_readline->gettext())); + _readline->kill(_readline->getcursorpos(), sizeof(_readline->gettext())); } void kill_whole_line() { - _readline->kill(0, strlen(_readline->gettext())); + _readline->kill(0, sizeof(_readline->gettext())); } void yank() @@ -1164,8 +1164,8 @@ int setcursorpos(int p) { if (p<0) p = 0; - if (p>strlen(text)) - p = strlen(text); + if (p>sizeof(text)) + p = sizeof(text); if (p<cursorpos) { if(!input_controller->dumb) @@ -1187,8 +1187,8 @@ int setmark(int p) { if (p<0) p = 0; - if (p>strlen(text)) - p = strlen(text); + if (p>sizeof(text)) + p = sizeof(text); mark=p; } @@ -1205,21 +1205,21 @@ void insert(string s, int p) { if (p<0) p = 0; - if (p>strlen(text)) - p = strlen(text); + if (p>sizeof(text)) + p = sizeof(text); setcursorpos(p); if(!input_controller->dumb) output_controller->write(s,0,hide); - cursorpos += strlen(s); + cursorpos += sizeof(s); string rest = text[p..]; - if (strlen(rest) && !input_controller->dumb) + if (sizeof(rest) && !input_controller->dumb) { output_controller->write(rest,0,hide); output_controller->move_backward(rest); } text = text[..p-1]+s+rest; - if (mark>p) mark+=strlen(s); + if (mark>p) mark+=sizeof(s); } //! @fixme @@ -1228,8 +1228,8 @@ void delete(int p1, int p2) { if (p1<0) p1 = 0; - if (p2>strlen(text)) - p2 = strlen(text); + if (p2>sizeof(text)) + p2 = sizeof(text); setcursorpos(p1); if (p1>=p2) return; @@ -1242,7 +1242,7 @@ void delete(int p1, int p2) if (mark>p2) mark-=(p2-p1); else if (mark>p1) mark=p1; - cursorpos = strlen(text); + cursorpos = sizeof(text); setcursorpos(p1); } @@ -1272,8 +1272,8 @@ void kill(int p1, int p2) { if (p1<0) p1 = 0; - if (p2>strlen(text)) - p2 = strlen(text); + if (p2>sizeof(text)) + p2 = sizeof(text); if (p1>=p2) return; add_to_kill_ring(text[p1..p2-1]); @@ -1302,7 +1302,7 @@ void history(int n) { if(historyobj) { string h = historyobj->history(n, text); - delete(0, strlen(text)+strlen(prompt)); + delete(0, sizeof(text)+sizeof(prompt)); insert(h, 0); } } @@ -1386,7 +1386,7 @@ void eof() void message(string msg) { int p = cursorpos; - setcursorpos(strlen(text)); + setcursorpos(sizeof(text)); output_controller->newline(); foreach(msg/"\n", string l) { output_controller->write(l); @@ -1414,7 +1414,7 @@ void write(string msg,void|int word_wrap) } output_controller->write(tmp[-1],word_wrap); - cursorpos=strlen(text); + cursorpos=sizeof(text); redisplay(0, 1); setcursorpos(p); } @@ -1468,10 +1468,10 @@ void set_blocking() //! Document this function string edit(string data, string|void local_prompt, array(string)|void attrs) { - if(data && strlen(data) && input_controller->dumb) + if(data && sizeof(data) && input_controller->dumb) { string ret=edit("", (local_prompt || get_prompt()) +"["+data+"] ", attrs); - return (!ret || !strlen(ret))?data:ret; + return (!ret || !sizeof(ret))?data:ret; } string old_prompt; array(string) old_attrs; diff --git a/lib/modules/Stdio.pmod/Terminfo.pmod b/lib/modules/Stdio.pmod/Terminfo.pmod index 95f33f89b8630850dc46f2fd8d983c3ca3969888..ec0c1888a036110b85d9e3d3d1f6c51166aaa987 100644 --- a/lib/modules/Stdio.pmod/Terminfo.pmod +++ b/lib/modules/Stdio.pmod/Terminfo.pmod @@ -1,4 +1,4 @@ -// $Id: Terminfo.pmod,v 1.13 2002/10/25 15:27:04 jonasw Exp $ +// $Id: Terminfo.pmod,v 1.14 2003/01/20 17:44:01 nilsson Exp $ #pike __REAL_VERSION__ @@ -369,12 +369,12 @@ class Terminfo { { string stroffs = swab(f->read(nstr*2)); string strbuf = f->read(sstr); - if(strlen(strbuf)==sstr-1 && !bug_compat && (nbool&1)) { + if(sizeof(strbuf)==sstr-1 && !bug_compat && (nbool&1)) { // Ugh. Someone didn't pad their bool array properly (one suspects). f->seek(0); return load_cap(f, 1); } - if(strlen(strbuf)!=sstr) + if(sizeof(strbuf)!=sstr) return 0; array(string) strarr = Array.map(array_sscanf(stroffs, "%2c"*nstr), lambda(int offs, string buf) { @@ -421,7 +421,7 @@ class TermcapDB { { if (!filename) { string tce = [string]getenv("TERMCAP"); - if (tce && strlen(tce) && tce[0]=='/') + if (tce && sizeof(tce) && tce[0]=='/') filename = tce; else filename = "/etc/termcap"; @@ -710,7 +710,7 @@ class TerminfoDB { { object(Terminfo) ti; - if (!strlen(term)) + if (!sizeof(term)) return 0; LOCK; if (!(ti = cache[term])) diff --git a/lib/modules/Stdio.pmod/module.pmod b/lib/modules/Stdio.pmod/module.pmod index a9060b65964043a3b63328e1840a347ad9304a90..cb8de8464e80db8700b9577218ae186b1e6762d3 100644 --- a/lib/modules/Stdio.pmod/module.pmod +++ b/lib/modules/Stdio.pmod/module.pmod @@ -1,4 +1,4 @@ -// $Id: module.pmod,v 1.162 2002/12/12 13:14:15 jhs Exp $ +// $Id: module.pmod,v 1.163 2003/01/20 17:44:01 nilsson Exp $ #pike __REAL_VERSION__ inherit files; @@ -690,7 +690,7 @@ class File string s=::read(8192,1); if(s) { - if(strlen(s)) + if(sizeof(s)) { ___read_callback(___id, s); return; @@ -750,7 +750,7 @@ class File static void __stdio_read_oob_callback() { string s=::read_oob(8192,1); - if(s && strlen(s)) + if(s && sizeof(s)) { ___read_oob_callback(___id, s); }else{ @@ -1187,7 +1187,7 @@ class FILE string s = file::read(BUFSIZE,1); if( input_conversion ) s = input_conversion( s ); - if(s && strlen(s)) + if(s && sizeof(s)) b+=s; else s = 0; @@ -1307,7 +1307,7 @@ class FILE } array res=b[bpos..]/"\n"; - bpos=strlen(b)-strlen(res[-1]); + bpos=sizeof(b)-sizeof(res[-1]); res=res[..sizeof(res)-2]; while (sizeof(res)<n) @@ -1318,12 +1318,12 @@ class FILE else return res; array a=b[bpos..]/"\n"; - bpos=strlen(b)-strlen(a[-1]); + bpos=sizeof(b)-sizeof(a[-1]); res+=a[..sizeof(a)-2]; } if (sizeof(res)>n) { - bpos-=`+(@map(res[n..],strlen))+(sizeof(res)-n); + bpos-=`+(@map(res[n..],sizeof))+(sizeof(res)-n); return res[..n-1]; } return res; @@ -1432,13 +1432,13 @@ class FILE } /* Optimization - Hubbe */ - if(!strlen(b) && bytes > BUFSIZE) { + if(!sizeof(b) && bytes > BUFSIZE) { if (input_conversion) return input_conversion(::read(bytes, now)); return ::read(bytes, now); } - while(strlen(b) - bpos < bytes) + while(sizeof(b) - bpos < bytes) if(!get_data()) { // EOF. string res = b[bpos..]; @@ -1475,7 +1475,7 @@ class FILE int getchar() { cached_lines = ({});lp=0; - if(strlen(b) - bpos < 1) + if(sizeof(b) - bpos < 1) if(!get_data()) return -1; @@ -1853,8 +1853,8 @@ int cp(string from, string to) { data=r(BLOCK); if(!data) return 0; - if(w(data)!=strlen(data)) return 0; - }while(strlen(data) == BLOCK); + if(w(data)!=sizeof(data)) return 0; + }while(sizeof(data) == BLOCK); f->close(); t->close(); diff --git a/lib/modules/String.pmod/Elite.pmod b/lib/modules/String.pmod/Elite.pmod index 729903481c037d8e90a9390c78de1700dfbe7cad..cd567a2c9a8d9dd755f8aa92813512695b81f2fa 100644 --- a/lib/modules/String.pmod/Elite.pmod +++ b/lib/modules/String.pmod/Elite.pmod @@ -1,4 +1,4 @@ -// $Id: Elite.pmod,v 1.2 2002/03/19 23:58:06 nilsson Exp $ +// $Id: Elite.pmod,v 1.3 2003/01/20 17:44:01 nilsson Exp $ #pike __REAL_VERSION__ @@ -259,7 +259,7 @@ string elite_string(string in, void|int(0..100) leetp, void|int(0..1) eightbit) { if (arrayp(dest)) dest=dest[random(sizeof(dest))]; res+=in[..i-1]+dest; - in=in[i+strlen(what)..]; + in=in[i+sizeof(what)..]; } in=res+in; } @@ -280,7 +280,7 @@ string elite_string(string in, void|int(0..100) leetp, void|int(0..1) eightbit) else r=what; res+=in[..i-1]+r; - in=in[i+strlen(what)..]; + in=in[i+sizeof(what)..]; } in=res+in; } diff --git a/lib/modules/String.pmod/module.pmod b/lib/modules/String.pmod/module.pmod index a7bd6d7b9c1c9c8ff352b9aee0ab3fa26c3c50ea..168ce1e7cb00793b67430151f6ade0e7ae1c5c94 100644 --- a/lib/modules/String.pmod/module.pmod +++ b/lib/modules/String.pmod/module.pmod @@ -100,7 +100,7 @@ static int low_fuzzymatch(string str1, string str2) int offset, length; int fuzz; fuzz = 0; - while(strlen(str1) && strlen(str2)) + while(sizeof(str1) && sizeof(str2)) { /* Now we will look for the first character of tmp1 in tmp2 */ if((offset = search(str2, str1[0..0])) != -1) @@ -112,7 +112,7 @@ static int low_fuzzymatch(string str1, string str2) while(1) { //*(++tmp1)==*(++tmp2) && *tmp1 - if(length < strlen(tmp1) && length < strlen(tmp2) && + if(length < sizeof(tmp1) && length < sizeof(tmp2) && tmp1[length] == tmp2[length]) length++; else @@ -126,7 +126,7 @@ static int low_fuzzymatch(string str1, string str2) continue; } } - if(strlen(str1)) + if(sizeof(str1)) str1 = str1[1..]; } return fuzz; @@ -148,7 +148,7 @@ int(0..100) fuzzymatch(string a, string b) fuzz = low_fuzzymatch(a, b); fuzz += low_fuzzymatch(b, a); - fuzz = fuzz*100/(strlen(a)+strlen(b)); + fuzz = fuzz*100/(sizeof(a)+sizeof(b)); return [int(0..100)]fuzz; } diff --git a/lib/modules/Tools.pmod/AutoDoc.pmod/CExtractor.pmod b/lib/modules/Tools.pmod/AutoDoc.pmod/CExtractor.pmod index eb4de8d8128e8029dcb53ac93ab8c2625a6f46ec..64a290071382bc92d5bc70bb99de0710e39894f9 100644 --- a/lib/modules/Tools.pmod/AutoDoc.pmod/CExtractor.pmod +++ b/lib/modules/Tools.pmod/AutoDoc.pmod/CExtractor.pmod @@ -43,7 +43,7 @@ static private class Extractor { foreach(ctokens, string ctoken) { if (has_prefix(ctoken, "/*!")) { int firstLine = line; - array(string) lines = ctoken[1 .. strlen(ctoken) - 3]/"\n"; + array(string) lines = ctoken[1 .. sizeof(ctoken) - 3]/"\n"; // werror("%O\n", lines); int lastLine = firstLine + sizeof(lines) - 1; lines = map(lines, stripDocMarker); diff --git a/lib/modules/Tools.pmod/AutoDoc.pmod/DocParser.pmod b/lib/modules/Tools.pmod/AutoDoc.pmod/DocParser.pmod index f1ae5250c1bf6d7f31002caaaf6098d479eedd8c..4f8549ecfd4e53fd257ed9a69f34b34426ec0236 100644 --- a/lib/modules/Tools.pmod/AutoDoc.pmod/DocParser.pmod +++ b/lib/modules/Tools.pmod/AutoDoc.pmod/DocParser.pmod @@ -148,7 +148,7 @@ multiset(string) allowOnlyOne = static int getKeywordType(string keyword) { if (keywordtype[keyword]) return keywordtype[keyword]; - if (strlen(keyword) > 3 && keyword[0..2] == "end") + if (sizeof(keyword) > 3 && keyword[0..2] == "end") return ENDKEYWORD; return ERRORKEYWORD; } @@ -172,7 +172,7 @@ static int isKeywordChar(int char) { static array(string) extractKeyword(string line) { line += "\0"; int i = 0; - while (i < strlen(line) && isSpaceChar(line[i])) + while (i < sizeof(line) && isSpaceChar(line[i])) ++i; if (line[i++] != '@') return 0; @@ -183,11 +183,11 @@ static array(string) extractKeyword(string line) { return 0; string keyword = line[keywordstart .. i - 1]; // if (getKeywordType(keyword) == METAKEYWORD) - return ({ keyword, line[i .. strlen(line) - 2] }); // skippa "\0" ... + return ({ keyword, line[i .. sizeof(line) - 2] }); // skippa "\0" ... } static int allSpaces(string s) { - for (int i = strlen(s) - 1; i >= 0; --i) + for (int i = sizeof(s) - 1; i >= 0; --i) if (s[i] != ' ' && s[i] != '\t') return 0; return 1; diff --git a/lib/modules/Tools.pmod/AutoDoc.pmod/MirarDocParser.pike b/lib/modules/Tools.pmod/AutoDoc.pmod/MirarDocParser.pike index 7f1c87e012382c345049583ea218c71cabcdb414..84c83195d1976c8acfd362acfe1583d63b10e078 100644 --- a/lib/modules/Tools.pmod/AutoDoc.pmod/MirarDocParser.pike +++ b/lib/modules/Tools.pmod/AutoDoc.pmod/MirarDocParser.pike @@ -1,4 +1,4 @@ -/* $Id: MirarDocParser.pike,v 1.18 2002/12/19 15:20:00 grubba Exp $ */ +/* $Id: MirarDocParser.pike,v 1.19 2003/01/20 17:44:01 nilsson Exp $ */ /* MirarDoc documentation extractor. */ @@ -66,7 +66,7 @@ string stripws(string s) if (s!="") { sscanf(s,"%[ ]%s",string a,string b); - if (b!="") m=min(strlen(a),m); + if (b!="") m=min(sizeof(a),m); } return map(lines,lambda(string s) { return s[m..]; })*"\n"; @@ -195,7 +195,7 @@ string getridoftabs(string s) while (sscanf(s,"%s\t%s",string a,s)==2) { res+=a; - res+=" "[(strlen(res)%8)..7]; + res+=" "[(sizeof(res)%8)..7]; } return res+s; } @@ -217,13 +217,13 @@ string htmlify(string s) string make_nice_reference(string what,string prefix,string stuff) { string q; - if (what==prefix[strlen(prefix)-strlen(what)-2..strlen(prefix)-3]) + if (what==prefix[sizeof(prefix)-sizeof(what)-2..sizeof(prefix)-3]) { - q=prefix[0..strlen(prefix)-3]; + q=prefix[0..sizeof(prefix)-3]; } - else if (what==prefix[strlen(prefix)-strlen(what)-1..strlen(prefix)-2]) + else if (what==prefix[sizeof(prefix)-sizeof(what)-1..sizeof(prefix)-2]) { - q=prefix[0..strlen(prefix)-2]; + q=prefix[0..sizeof(prefix)-2]; } else if (search(what,".")==-1 && search(what,"->")==-1 && @@ -287,7 +287,7 @@ string doctype(string type,void|string indent) { int i; int q=1; - for (i=0; i<strlen(in); i++) + for (i=0; i<sizeof(in); i++) switch (in[i]) { case '(': q++; break; @@ -298,7 +298,7 @@ string doctype(string type,void|string indent) string combine_or(string a,string b) { b = String.trim_all_whites(b); - if (b[..3]=="<or>") b=b[4..strlen(b)-6]; + if (b[..3]=="<or>") b=b[4..sizeof(b)-6]; return "<or>"+a+b+"</or>"; }; array(string) paramlist(string in,string indent) @@ -306,7 +306,7 @@ string doctype(string type,void|string indent) int i; int q=0; array res=({}); - for (i=0; i<strlen(in); i++) + for (i=0; i<sizeof(in); i++) switch (in[i]) { case '(': q++; break; diff --git a/lib/modules/Tools.pmod/AutoDoc.pmod/PikeExtractor.pmod b/lib/modules/Tools.pmod/AutoDoc.pmod/PikeExtractor.pmod index c76cb1dfd7981a766d2bb7455308adf7f8991f91..ad688903ee5d34f261621d9b3a062c11e07e6150 100644 --- a/lib/modules/Tools.pmod/AutoDoc.pmod/PikeExtractor.pmod +++ b/lib/modules/Tools.pmod/AutoDoc.pmod/PikeExtractor.pmod @@ -37,7 +37,7 @@ static private class Extractor { int pos = positions[i]; int ignoreline = 0; if (has_prefix(s, DOC_COMMENT)) { - s = String.trim_all_whites(s[strlen(DOC_COMMENT) .. ]); + s = String.trim_all_whites(s[sizeof(DOC_COMMENT) .. ]); ignoreline = 1; if (s == "@ignore") ignores = ({ pos }) + ignores; @@ -67,7 +67,7 @@ static private class Extractor { } static int isDocComment(string s) { - return (strlen(s) >= 3 && s[0..2] == DOC_COMMENT); + return (sizeof(s) >= 3 && s[0..2] == DOC_COMMENT); } static string stripDocMarker(string s) { diff --git a/lib/modules/Tools.pmod/AutoDoc.pmod/PikeParser.pike b/lib/modules/Tools.pmod/AutoDoc.pmod/PikeParser.pike index 911d1143c0746790fbbb82315c0dd016a2aca3b8..11a323eb816c5cf747a75fccbdbc4e2b71bb2d6e 100644 --- a/lib/modules/Tools.pmod/AutoDoc.pmod/PikeParser.pike +++ b/lib/modules/Tools.pmod/AutoDoc.pmod/PikeParser.pike @@ -190,7 +190,7 @@ string eatIdentifier(void|int allowScopePrefix) { string colons = peekToken() == "::" ? readToken() : ""; // werror("scope == %O ,colons == %O\n", scope, colons); - if (strlen(scope + colons) && !allowScopePrefix) + if (sizeof(scope + colons) && !allowScopePrefix) parseError("scope prefix not allowed"); string s = peekToken(); if (!isIdent(s)) @@ -335,7 +335,7 @@ string|void parseIdents() { string parseProgramName() { string s = peekToken(); - if (strlen(s) && s[0] == '"') + if (sizeof(s) && s[0] == '"') return (readToken(), s); s = parseIdents(); if (!s) @@ -663,7 +663,7 @@ static private array(string) special(array(string) in) { int c = String.count(s, "\n"); if (c) ret += ({ "\n" }) * c; - else if (strlen(replace(s, ({" ", "\t", "\r" }), ({ "","","" }) ))) + else if (sizeof(replace(s, ({" ", "\t", "\r" }), ({ "","","" }) ))) ret += ({ s }); } return ret; @@ -682,10 +682,10 @@ array(array(string)|array(int)) tokenize(string s, string filename, int line) { line += sizeof(s / "\n") - 1; // remove preprocessor directives: - if (strlen(s) > 1 && s[0..0] == "#") + if (sizeof(s) > 1 && s[0..0] == "#") continue; // remove non-doc comments - if (strlen(s) >= 2 && + if (sizeof(s) >= 2 && (s[0..1] == "/*" || s[0..1] == "//") && !isDocComment(s)) continue; diff --git a/lib/modules/Tools.pmod/AutoDoc.pmod/ProcessXML.pmod b/lib/modules/Tools.pmod/AutoDoc.pmod/ProcessXML.pmod index ff925d169a91b1ed237f831a5c65307eeb1fe517..0c36add2b88f284023d40a952e137a9392ba8dbd 100644 --- a/lib/modules/Tools.pmod/AutoDoc.pmod/ProcessXML.pmod +++ b/lib/modules/Tools.pmod/AutoDoc.pmod/ProcessXML.pmod @@ -180,7 +180,7 @@ string extractXML(string filename, int|void pikeMode, string|void type, // array(string) a = Parser.Pike.split(contents); // // check if it _really_ is a C-style doc comment ... // foreach (a, string s) - // if (strlen(s) >= strlen("/*!*/") && s[0..2] == "/*!") + // if (sizeof(s) >= sizeof("/*!*/") && s[0..2] == "/*!") // styleC = 1; // else if (isDocComment(s)) // stylePike = 1; diff --git a/lib/modules/Tools.pmod/PEM.pmod b/lib/modules/Tools.pmod/PEM.pmod index ca3a05c3f8ba649ca200addd9231e2b1e58e8878..fce7a3e36330a79efa42d5441c8666bc0d4d8814 100644 --- a/lib/modules/Tools.pmod/PEM.pmod +++ b/lib/modules/Tools.pmod/PEM.pmod @@ -49,7 +49,7 @@ class encapsulated_message { /* Make all lines terminated with \r (but the last, which is * either empty or a "line" that was not terminated). */ for(int i=0; i < sizeof(lines)-1; i++) - if (!strlen(lines[i]) || (lines[i][-1] != '\r')) + if (!sizeof(lines[i]) || (lines[i][-1] != '\r')) lines[i] += "\r"; return lines * "\n"; } diff --git a/lib/modules/Tools.pmod/Shoot.pmod/module.pmod b/lib/modules/Tools.pmod/Shoot.pmod/module.pmod index 81bdd5857b68a9c46d13ac2e01dac4c77427455f..3f3281d01ff3e696aba5891887c6c108518e8522 100644 --- a/lib/modules/Tools.pmod/Shoot.pmod/module.pmod +++ b/lib/modules/Tools.pmod/Shoot.pmod/module.pmod @@ -65,7 +65,7 @@ class ExecTest(string id,Test test) int testntot=0; if (!silent) - write(test->name+"..........................."[strlen(test->name)..]); + write(test->name+"..........................."[sizeof(test->name)..]); for (;;) { diff --git a/lib/modules/Tools.pmod/Standalone.pmod/assemble_autodoc.pike b/lib/modules/Tools.pmod/Standalone.pmod/assemble_autodoc.pike index 1224cb5a6038d73f636f79d5fe8e3e95bc8c0d60..988e489ce2f1c2cdb7173932cffac245b27edcad 100644 --- a/lib/modules/Tools.pmod/Standalone.pmod/assemble_autodoc.pike +++ b/lib/modules/Tools.pmod/Standalone.pmod/assemble_autodoc.pike @@ -1,4 +1,4 @@ -// $Id: assemble_autodoc.pike,v 1.24 2002/12/14 04:34:15 nilsson Exp $ +// $Id: assemble_autodoc.pike,v 1.25 2003/01/20 17:44:02 nilsson Exp $ constant description = "Assembles AutoDoc output file."; @@ -94,7 +94,7 @@ string visualize(Node n, int depth) { if(n->get_node_type() == XML_TEXT) return Parser.XML.Tree.text_quote(n->get_text()); if(n->get_node_type() != XML_ELEMENT || - !strlen(n->get_tag_name())) + !sizeof(n->get_tag_name())) return ""; string name = n->get_tag_name(); diff --git a/lib/modules/Tools.pmod/X509.pmod b/lib/modules/Tools.pmod/X509.pmod index 2e2eebb8531fcfd8bbc276975bd533b6efbc0b32..5c27e064cf82a58e8f254900d8065d2aba82623f 100644 --- a/lib/modules/Tools.pmod/X509.pmod +++ b/lib/modules/Tools.pmod/X509.pmod @@ -1,7 +1,7 @@ #pike __REAL_VERSION__ /* - * $Id: X509.pmod,v 1.16 2001/10/08 05:37:38 per Exp $ + * $Id: X509.pmod,v 1.17 2003/01/20 17:44:01 nilsson Exp $ * * Some random functions for creating RFC-2459 style X.509 certificates. * @@ -40,11 +40,11 @@ object make_time(int t) mapping parse_time(object asn1) { if ((asn1->type_name != "UTCTime") - || (strlen(asn1->value) != 13)) + || (sizeof(asn1->value) != 13)) return 0; sscanf(asn1->value, "%[0-9]s%c", string s, int c); - if ( (strlen(s) != 12) && (c != 'Z') ) + if ( (sizeof(s) != 12) && (c != 'Z') ) return 0; /* NOTE: This relies on pike-0.7 not interpreting leading zeros as diff --git a/lib/modules/Tools.pmod/_PEM.pmod b/lib/modules/Tools.pmod/_PEM.pmod index 1c97303d96c63ccbb887dbf71f3288f769d637c1..a23987fba1a85a723c6a4aa7f58c7d79de70b54c 100644 --- a/lib/modules/Tools.pmod/_PEM.pmod +++ b/lib/modules/Tools.pmod/_PEM.pmod @@ -53,8 +53,8 @@ string dash_stuff(string msg) #if 0 string chop_cr(string s) { - return (strlen(s) && (s[-1] == '\r')) - ? s[..strlen(s) - 2] + return (sizeof(s) && (s[-1] == '\r')) + ? s[..sizeof(s) - 2] : s; } #endif diff --git a/lib/modules/Tools.pmod/sed.pmod b/lib/modules/Tools.pmod/sed.pmod index 74ae2e20840ff9bbd950bd34466c80d40f8ef7df..684aa1dd12e385a1f25a0a267fdecda79b0294fd 100644 --- a/lib/modules/Tools.pmod/sed.pmod +++ b/lib/modules/Tools.pmod/sed.pmod @@ -48,7 +48,7 @@ static array sedreplace(string s,object re,string with, wa=sedreplace(a[0],re,with,whatin,first,lastmod,flags); if (wa) if (!flags["g"]) - return ({wa[0],wa[1]+s[strlen(a[0])..]}); + return ({wa[0],wa[1]+s[sizeof(a[0])..]}); else pr=wa[0],w=wa[1]; else @@ -210,10 +210,10 @@ string|array `()(string|array(string) commands, inflags=""; if (sscanf(cmd,"%*c"+div+"%s"+div+"%s"+div+"%s", what,with,inflags)<3) continue; - if (strlen(what)!=strlen(with)) + if (sizeof(what)!=sizeof(with)) { - what=what[0..strlen(with)-1]; - with=with[0..strlen(what)-1]; + what=what[0..sizeof(with)-1]; + with=with[0..sizeof(what)-1]; } a1=what/"",a2=with/""; diff --git a/lib/modules/Web.pmod/Crawler.pmod b/lib/modules/Web.pmod/Crawler.pmod index 989272fcf5e99858efa02211085f8c62d4218269..1cdb37b0feb752f202801ff339ab4f2850dc9970 100644 --- a/lib/modules/Web.pmod/Crawler.pmod +++ b/lib/modules/Web.pmod/Crawler.pmod @@ -33,7 +33,7 @@ //! @enddl // Author: Johan Sch�n. -// $Id: Crawler.pmod,v 1.13 2002/12/11 22:18:02 anders Exp $ +// $Id: Crawler.pmod,v 1.14 2003/01/20 17:44:02 nilsson Exp $ #define CRAWLER_DEBUG #ifdef CRAWLER_DEBUG @@ -179,7 +179,7 @@ class Queue if( !h[a]++ ) res += "&"+a+"="+b; } - if( !strlen( res ) ) + if( !sizeof( res ) ) return 0; return res[1..]; } diff --git a/lib/modules/_Image.pmod/Fonts.pmod b/lib/modules/_Image.pmod/Fonts.pmod index 70b43f0662b840c2cc4d024347f295377d5631df..2274bd728804e0e89c06c2e0dfeb11cd8a096779 100644 --- a/lib/modules/_Image.pmod/Fonts.pmod +++ b/lib/modules/_Image.pmod/Fonts.pmod @@ -64,7 +64,7 @@ static class FTFont { Image.Image res; int xp, ys; - if( !strlen( text ) ) + if( !sizeof( text ) ) text = " "; array(int) tx = (array(int))text; array chars = map( tx, do_write_char ); diff --git a/lib/modules/_Image.pmod/module.pmod b/lib/modules/_Image.pmod/module.pmod index 915e37aa1bbcf0562d4ab251c2e0bea70523e3a3..31c6c7536e89c1d8f4906c1306bfca28e3a29a60 100644 --- a/lib/modules/_Image.pmod/module.pmod +++ b/lib/modules/_Image.pmod/module.pmod @@ -1,6 +1,6 @@ #pike __REAL_VERSION__ -// $Id: module.pmod,v 1.31 2002/11/15 05:06:18 nilsson Exp $ +// $Id: module.pmod,v 1.32 2003/01/20 17:44:02 nilsson Exp $ static constant fmts = ([ "image/x-pnm" : "PNM", @@ -44,7 +44,7 @@ mapping _decode( string data ) sscanf(data[120..121],"%2c",p); // extra header size p=128+((p+127)/128)*128; // data fork position - if (p<strlen(data) && l) // extra sanity check + if (p<sizeof(data) && l) // extra sanity check data=data[p..p+l-1]; } } @@ -203,7 +203,7 @@ local string load_file( void|object|string file ) catch( data = file->read() ); else { - if( catch( data = read_file( file ) ) || !data || !strlen(data) ) + if( catch( data = read_file( file ) ) || !data || !sizeof(data) ) catch( data = Protocols.HTTP.get_url_nice( file )[ 1 ] ); } return data; diff --git a/lib/modules/_Image_XCF.pmod b/lib/modules/_Image_XCF.pmod index c5b0d2f05fa627cfbf714c3c4b70028ea92607cf..bc9bb0dc6121d94e7892ed22b62f8cd6216047e8 100644 --- a/lib/modules/_Image_XCF.pmod +++ b/lib/modules/_Image_XCF.pmod @@ -39,7 +39,7 @@ array(Parasite) decode_parasites( mixed data ) { array res = ({}); data = (string)data; - while(strlen(data)) + while(sizeof(data)) { int slen, flags; string value, name; diff --git a/lib/modules/_Image_XPM.pmod b/lib/modules/_Image_XPM.pmod index 99acbbe19acf0ffb958ac619909b54fa7c812e9a..b62f881ad8bb527f80d06716da8b959090a49d60 100644 --- a/lib/modules/_Image_XPM.pmod +++ b/lib/modules/_Image_XPM.pmod @@ -27,7 +27,7 @@ mapping _decode( string what, void|mapping opts ) if(sscanf(what, "%*s/*%*[ \t]XPM%*[ \t]*/%*s{%s", what) != 5) error("This is not a XPM image (1)\n"); - if(strlen(what)<100000) + if(sizeof(what)<100000) { TD("Extra scan for small images"); sscanf(what, "%s\n/* XPM */", what ) || @@ -172,7 +172,7 @@ string encode( object what, mapping|void options ) string r = ""; int i; r += "\""; - for(i=0; i<strlen(row); i++) + for(i=0; i<sizeof(row); i++) r += cmap_t[row[i]]; res += r+"\",\n"; } diff --git a/src/modules/Gz/flushtest.pike b/src/modules/Gz/flushtest.pike index c58aa3f5588b4d48a6c12686fef753d09a961ecf..c2f37cead3e4f2114aab1eebbab20c4049b17a80 100644 --- a/src/modules/Gz/flushtest.pike +++ b/src/modules/Gz/flushtest.pike @@ -17,12 +17,12 @@ int main() if(data0 + data1 != unpacked) { werror("Input length: %d (%d+%d)\n", - strlen(data0)+strlen(data0), - strlen(data0),strlen(data1)); + sizeof(data0)+sizeof(data0), + sizeof(data0),sizeof(data1)); werror("Packed length: %d (should be %d)\n", - strlen(packed), - strlen(Gz.deflate()->deflate(data0+data1))); - werror("Output length: %d\n",strlen(unpacked)); + sizeof(packed), + sizeof(Gz.deflate()->deflate(data0+data1))); + werror("Output length: %d\n",sizeof(unpacked)); return 1; }else{ return 0; diff --git a/src/modules/HTTPLoop/test.pike b/src/modules/HTTPLoop/test.pike index 58d300b4dfde19e62a5b0d6188cef73a3ce86274..28584148a25bbfd5f70a120373b218f060501c27 100644 --- a/src/modules/HTTPLoop/test.pike +++ b/src/modules/HTTPLoop/test.pike @@ -18,7 +18,7 @@ void handle(object o) object fd = Stdio.File(); string q = o->not_query; int len; - if(!strlen(q)) q="foo"; + if(!sizeof(q)) q="foo"; if(q[-1]=='/') q += "index.html"; sscanf(q, "%*[/]%s", q); @@ -45,7 +45,7 @@ void handle(object o) "Server: Quick'n'dirty\r\n" "Content-type: text/plain\r\n" "Connection: Keep-Alive\r\n" - "Content-length: "+strlen(er)+"\r\n" + "Content-length: "+sizeof(er)+"\r\n" "\r\n"+er, 200); } } diff --git a/src/modules/HTTPLoop/wwwserver.pike b/src/modules/HTTPLoop/wwwserver.pike index e5b029b30dd067cd1514f960a9199ffcdd372e59..4d3b6fe7df0fc557cfc3bc360d3fab4aaf20f6ab 100644 --- a/src/modules/HTTPLoop/wwwserver.pike +++ b/src/modules/HTTPLoop/wwwserver.pike @@ -62,7 +62,7 @@ mixed handle(object o) "<h1>No such file or directory: "+f+"</h1>"; o->reply_with_cache("HTTP/1.0 404 Unknown file\r\n" "Content-type: text/html\r\n" - "Content-Length: "+strlen(nofile)+"\r\n" + "Content-Length: "+sizeof(nofile)+"\r\n" "MIME-Version: 1.0\r\n" "Server: Neo-FastSpeed\r\n" "Connection: Keep-Alive\r\n" @@ -105,7 +105,7 @@ mixed handle(object o) ctype); } return o->reply_with_cache(head + - "Content-Length: "+strlen(res)+ + "Content-Length: "+sizeof(res)+ "\r\n\r\n"+res, 30); } else { o->reply_with_cache("HTTP/1.0 302 Redirect\r\n" @@ -158,7 +158,7 @@ int main(int argc, array (string) argv) array foo; foreach(read_file((argv[0] - "wwwserver.pike") + "extensions")/"\n", string s) { - if(strlen(s) && s[0] != '#' && (foo = (s / "\t" - ({""}))) && + if(sizeof(s) && s[0] != '#' && (foo = (s / "\t" - ({""}))) && sizeof(foo) == 2) exts[foo[0]] = foo[1]; } diff --git a/src/modules/_Charset/module.pmod.in b/src/modules/_Charset/module.pmod.in index 6839792ad64a32395792884bf102e785ea6912d1..f00ef77ef9a88a78af35d6a813c10a21bdbd73e1 100644 --- a/src/modules/_Charset/module.pmod.in +++ b/src/modules/_Charset/module.pmod.in @@ -263,7 +263,7 @@ private class _encoder static string low_convert(string s, string|void r, function(string:string)|void rc) { - int i = strlen(s); + int i = sizeof(s); string rr; while(--i>=0) if(s[i]>255) @@ -307,7 +307,7 @@ private class UTF16enc { static private string low_convert(string s, string|void r, function(string:string)|void rc) { - int i = strlen(s); + int i = sizeof(s); string rr; while(--i>=0) if(s[i]>0x10ffff) diff --git a/src/modules/files/socktest.pike b/src/modules/files/socktest.pike index 539df2bc2c32538d45510ff012af515ed017f643..87433773ad424d28d1dd7b6a5455bd0be5aa2a06 100755 --- a/src/modules/files/socktest.pike +++ b/src/modules/files/socktest.pike @@ -1,6 +1,6 @@ #!/usr/local/bin/pike -/* $Id: socktest.pike,v 1.20 2002/10/12 13:32:31 grubba Exp $ */ +/* $Id: socktest.pike,v 1.21 2003/01/20 17:53:13 nilsson Exp $ */ import Stdio; @@ -48,18 +48,18 @@ class Socket { if(input_buffer != expected_data) { werror("Failed to read complete data, errno=%d.\n",err); - if(strlen(input_buffer) < 100) + if(sizeof(input_buffer) < 100) { werror(num+":Input buffer: "+input_buffer+"\n"); }else{ - werror(num+":Input buffer: "+strlen(input_buffer)+" bytes.\n"); + werror(num+":Input buffer: "+sizeof(input_buffer)+" bytes.\n"); } - if(strlen(expected_data) < 100) + if(sizeof(expected_data) < 100) { werror(num+":Expected data: "+expected_data+"\n"); }else{ - werror(num+":Expected data: "+strlen(expected_data)+" bytes.\n"); + werror(num+":Expected data: "+sizeof(expected_data)+" bytes.\n"); } exit(1); @@ -72,7 +72,7 @@ class Socket { void write_callback() { got_callback(); - if(strlen(output_buffer)) + if(sizeof(output_buffer)) { int tmp=write(output_buffer); if(tmp >= 0) @@ -124,7 +124,7 @@ class Socket2 void write_callback() { got_callback(); - if(strlen(output_buffer)) + if(sizeof(output_buffer)) { int prerefs = _refs ("%s"); int tmp=write(({"%s"}), output_buffer); diff --git a/src/post_modules/GTK/new_build_pgtk.pike b/src/post_modules/GTK/new_build_pgtk.pike index e8c44300ba393ce1c1f01c025a4c733c65425861..8fdb99f1bd879feb1450db0cd9397ae85b2c6a86 100755 --- a/src/post_modules/GTK/new_build_pgtk.pike +++ b/src/post_modules/GTK/new_build_pgtk.pike @@ -51,7 +51,7 @@ string destination_dir = ""; string indent( string what, int amnt ) { - if( !strlen(what) ) return ""; + if( !sizeof(what) ) return ""; string q = (" "*amnt); return q+((what/"\n")*("\n"+q)); } @@ -61,7 +61,7 @@ string make_c_string( string from ) string line = "\""; string res = ""; int c; - for( int i=0; i<strlen( from ); i++ ) + for( int i=0; i<sizeof( from ); i++ ) { switch( (c=from[i]) ) { @@ -76,7 +76,7 @@ string make_c_string( string from ) line += sprintf("\\%o", c ); break; } - if( strlen( line ) > 75 ) + if( sizeof( line ) > 75 ) { res += line+"\"\n"; line="\""; @@ -103,9 +103,9 @@ int data_offset( string what ) if((off=search(gbl_data,what))!=-1) { - if( gbl_data[ off..off+strlen(what)-1 ] != what ) + if( gbl_data[ off..off+sizeof(what)-1 ] != what ) werror( "Search returned illegal string match! %O != %O\n", - gbl_data[ off..off+strlen(what)-1 ], what ); + gbl_data[ off..off+sizeof(what)-1 ], what ); return ocache[what]=off; } // write("New string: %O\n", what); @@ -200,9 +200,9 @@ class Function(Class parent, { res += sprintf(" quick_add_function(%s,%d,p%s,%s,%d,\n " "%s,OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);\n", - S(name,0,1,27), strlen(name), + S(name,0,1,27), sizeof(name), c_name(), S(type,0,2,27), - strlen(type), (is_static()?"ID_STATIC":"0")); + sizeof(type), (is_static()?"ID_STATIC":"0")); }; array names = ({ name }); switch( name ) @@ -407,12 +407,12 @@ class Member( string name, Type type, int set, if( set || classes[ type->name ] ) return sprintf(" quick_add_function(%s,%d,p%s,\n %s,%d," "0,OPT_EXTERNAL_DEPEND);\n", - S(name,0,1,27), strlen(name), - c_name(), S(tp,0,2,27), strlen(tp)); + S(name,0,1,27), sizeof(name), + c_name(), S(tp,0,2,27), sizeof(tp)); return sprintf(" quick_add_function(%s,%d,p%s,\n %s,%d," "0,OPT_EXTERNAL_DEPEND);\n", - S("get_"+name,0,1,27), strlen("get_"+name), - c_name(), S(tp,0,2,27), strlen(tp)); + S("get_"+name,0,1,27), sizeof("get_"+name), + c_name(), S(tp,0,2,27), sizeof(tp)); } string pike_name() @@ -1037,7 +1037,7 @@ class Class( string name, string file, int line ) }), SPLIT( "{\n pgtk_default__sprintf( args, "+ - data_offset( name )+","+strlen(name)+ + data_offset( name )+","+sizeof(name)+ " );\n}\n", file), ({}), @@ -1294,7 +1294,7 @@ Type parse_type( mixed t ) } else tt = t->text; - if(!strlen(tt)) + if(!sizeof(tt)) SYNTAX("Expected type",t); if( tt[0] == '"' ) // No types are strings... SYNTAX("Expected type",t); @@ -1396,7 +1396,7 @@ string parse_pre_file( string file ) { object pp = t[i]; string fname; - if( strlen(pp->text) && + if( sizeof(pp->text) && pp->text[0] == '#' && sscanf( pp->text, "#include \"%s.inc\"", fname ) ) { @@ -1541,7 +1541,7 @@ string parse_pre_file( string file ) if( token->text[..1] == "/*" ) // comment continue; - if( !strlen(token->text) ) + if( !sizeof(token->text) ) continue; if( token->text[0] == '#' ) @@ -1636,7 +1636,7 @@ void main(int argc, array argv) source_dir = combine_path( getcwd(), source_dir ); if (source_dir[-1] != '/') source_dir += "/"; - if( !strlen(destination_dir) || destination_dir[0] != '/' ) + if( !sizeof(destination_dir) || destination_dir[0] != '/' ) destination_dir = combine_path( getcwd(), destination_dir ); if (destination_dir[-1] != '/') destination_dir += "/"; diff --git a/src/post_modules/GTK/output/doc-pikeref.pike b/src/post_modules/GTK/output/doc-pikeref.pike index e37f15e06ca319e62034eb43c80a48cf940deca5..c3cb7d0b51087e29660806bd19d7b5811abd2fbc 100644 --- a/src/post_modules/GTK/output/doc-pikeref.pike +++ b/src/post_modules/GTK/output/doc-pikeref.pike @@ -133,13 +133,13 @@ static string make_pike_refdoc( string pgtkdoc, mapping|void signals) { string res = ""; - if( !pgtkdoc || !strlen(pgtkdoc) ) + if( !pgtkdoc || !sizeof(pgtkdoc) ) return "//!\n"; pgtkdoc = fix_images( fix_const( trim_xml(pgtkdoc) ) ); foreach( pgtkdoc/"\n", string s ) { - if( !strlen(s) ) + if( !sizeof(s) ) res += "//!\n"; else if( s[0] == '!' ) res += "//"+s+"\n"; @@ -233,7 +233,7 @@ static string make_function_doc( Function f, Class c ) res += ");"; res += "\n"; imgfile=imgfilename(c->name+"_"+f->name); - if( !f->doc || !strlen( f->doc ) ) + if( !f->doc || !sizeof( f->doc ) ) { werror("Warning:"+f->file+":"+f->line+": " +c->name+"->"+f->name+" not documented\n" ); @@ -251,7 +251,7 @@ static void output_class( Class cls, int lvl ) string result = ""; array functions = ({}); imgfile=imgfilename(cls->name); - if( !cls->doc || !strlen( cls->doc ) ) + if( !cls->doc || !sizeof( cls->doc ) ) werror("Warning:"+cls->file+":"+cls->line+": " +cls->name+" not documented\n" ); diff --git a/src/post_modules/GTK/output/few.pike b/src/post_modules/GTK/output/few.pike index 9e1b999262150747868e21fc5d371df47e5cdc4c..88c30afea543857de516afebfd4a2a83be0fa095 100644 --- a/src/post_modules/GTK/output/few.pike +++ b/src/post_modules/GTK/output/few.pike @@ -9,7 +9,7 @@ int fcount; void output_current_data() { // Processing done. Actually write the file. - if( strlen( current_data ) ) + if( sizeof( current_data ) ) { fcount++; write_file( dir + "pgtk_"+(fcount)+".c", current_data ); @@ -29,7 +29,7 @@ static void output_class( Class cls, int lvl ) cls->create_default_sprintf(); /* Start output */ - if(!strlen( current_data ) ) + if(!sizeof( current_data ) ) current_data += "#define EXTPRG extern\n"+sfhead; if( sizeof( cls->pre ) ) diff --git a/src/post_modules/GTK/output/split.pike b/src/post_modules/GTK/output/split.pike index 77ae4c6bf612b11c30e7c71d2c4eeeb2621c0905..475c7b6a9619d582370ad5fbf464ae8fbfffdc20 100644 --- a/src/post_modules/GTK/output/split.pike +++ b/src/post_modules/GTK/output/split.pike @@ -6,7 +6,7 @@ object parent; static string filename( Class c ) { - if( strlen( c->c_name() ) ) + if( sizeof( c->c_name() ) ) return "p"+c->c_name()+".c"; return "pgtk_globals.c"; } @@ -120,13 +120,13 @@ string make_initfun() for( int i = 1; i<=init_n; i++ ) { line += "_"+i+"(); "; - if( strlen( line ) > 70 ) + if( sizeof( line ) > 70 ) { res += " "+line+"\n"; line = ""; } } - if( strlen(line) ) + if( sizeof(line) ) res += " "+line+"\n"; return res; } @@ -161,7 +161,7 @@ array(string) output( mapping(string:Class) classes, array q = ({}); foreach( values(classes), object c ) q |= indices(c->functions) | indices(c->members); - q = Array.uniq( q ); sort(map(q,strlen),q); + q = Array.uniq( q ); sort(map(q,sizeof),q); foreach( reverse(q), string w ) S(w); traverse_class_tree( classes, build_pike_fadds ); @@ -173,7 +173,7 @@ array(string) output( mapping(string:Class) classes, if( !done[s] ) done[s] = c->signals[s]; - q = indices( done ); sort(map(q,strlen),q); + q = indices( done ); sort(map(q,sizeof),q); foreach( reverse(q), string w ) S("s_"+w,1); foreach( sort(indices( done )), string w ) diff --git a/src/post_modules/Unicode/make_canonicals.pike b/src/post_modules/Unicode/make_canonicals.pike index a43d4325070f493410c6bd9ba6acdd0dd006366f..1d545a02721f59d660a95d697c6a45b28fdf47f7 100644 --- a/src/post_modules/Unicode/make_canonicals.pike +++ b/src/post_modules/Unicode/make_canonicals.pike @@ -6,7 +6,7 @@ void main() foreach( Stdio.stdin.read()/"\n", string line ) { sscanf( line, "%s#", line ); - if( !strlen( line ) ) + if( !sizeof( line ) ) continue; array data = line / ";"; if( sizeof( data ) != 15 ) diff --git a/src/post_modules/Unicode/make_decompose.pike b/src/post_modules/Unicode/make_decompose.pike index f00e1c4fa3c2de77dffbc96dc4bf2b050d2624d7..0f7e529ca92d175d1e990c4c138fffff0ce9c011 100644 --- a/src/post_modules/Unicode/make_decompose.pike +++ b/src/post_modules/Unicode/make_decompose.pike @@ -46,7 +46,7 @@ void main() foreach( Stdio.stdin.read()/"\n", string line ) { sscanf( line, "%s#", line ); - if( !strlen( line ) ) + if( !sizeof( line ) ) continue; array data = line / ";"; if( sizeof( data ) != 15 ) diff --git a/src/post_modules/Unicode/make_wordbits.pike b/src/post_modules/Unicode/make_wordbits.pike index 2961666e6f9f1ee7b61a8b739e185efbe02b8ad8..0f564b11b5dd5b234c3c0dd0390e0f38afb2ef34 100644 --- a/src/post_modules/Unicode/make_wordbits.pike +++ b/src/post_modules/Unicode/make_wordbits.pike @@ -27,7 +27,7 @@ void main() foreach( Stdio.stdin.read()/"\n", string line ) { sscanf( line, "%s#", line ); - if( !strlen( line ) ) + if( !sizeof( line ) ) continue; array data = line / ";"; if( sizeof( data ) != 15 ) @@ -36,7 +36,7 @@ void main() if( sscanf( data[0], "%x", c ) && data[1][0] != '<' ) if( parse_type( data[2] ) ) { - if( !strlen(data[5]) && !last_was ) + if( !sizeof(data[5]) && !last_was ) last_was = c; } else if( last_was ) diff --git a/src/post_modules/Unicode/test.pike b/src/post_modules/Unicode/test.pike index 12509f5ba40c8647169eeb486ffffbc09c50bf78..5d86910af15184f7061d4c959aa50e76b75632a7 100644 --- a/src/post_modules/Unicode/test.pike +++ b/src/post_modules/Unicode/test.pike @@ -1,6 +1,6 @@ #! /usr/bin/env pike -// $Id: test.pike,v 1.5 2002/05/09 13:31:09 per Exp $ +// $Id: test.pike,v 1.6 2003/01/20 18:00:49 nilsson Exp $ #define c1 c[0] #define c2 c[1] @@ -23,7 +23,7 @@ void main(int argc, array argv) foreach( Stdio.File( argv[1]+"/NormalizationTest.txt","r" )->read()/"\n", string l ) { - if( !strlen( l ) || has_prefix(l, "#")) + if( !sizeof( l ) || has_prefix(l, "#")) continue; if( l[0] == '@' ) @@ -35,7 +35,7 @@ void main(int argc, array argv) part++; continue; } - if( !strlen( l ) ) + if( !sizeof( l ) ) continue; string decode_hex( string d )