From ead9722f1d1ea6127c3825dda5013669fac91864 Mon Sep 17 00:00:00 2001 From: Martin Nilsson <mani@lysator.liu.se> Date: Mon, 20 Jan 2003 19:01:50 +0100 Subject: [PATCH] strlen -> sizeof Rev: bin/fake_dynamic_load.pike:1.6 Rev: bin/httpd.pike:1.5 Rev: bin/install.pike:1.109 Rev: bin/mkpeep.pike:1.30 Rev: bin/tarfilter.pike:1.4 Rev: bin/test_pike.pike:1.80 Rev: bin/unbug:1.10 Rev: lib/modules/ADT.pmod/struct.pike:1.11 Rev: lib/modules/Audio.pmod/Format.pmod/module.pmod:1.6 Rev: lib/modules/Calendar.pmod/Events.pmod:1.13 Rev: lib/modules/Calendar.pmod/Time.pmod:1.22 Rev: lib/modules/Calendar.pmod/Timezone.pmod:1.27 Rev: lib/modules/Calendar.pmod/YMD.pmod:1.48 Rev: lib/modules/Calendar.pmod/mkrules.pike:1.7 Rev: lib/modules/Colors.pmod:1.13 Rev: lib/modules/Crypto/_rsa.pike:1.7 Rev: lib/modules/Crypto/des3.pike:1.8 Rev: lib/modules/Crypto/dsa.pike:1.12 Rev: lib/modules/Crypto/hmac.pike:1.9 Rev: lib/modules/Crypto/randomness.pmod:1.24 Rev: lib/modules/Crypto/rsa.pike:1.32 Rev: lib/modules/Filesystem.pmod/System.pike:1.14 Rev: lib/modules/Filesystem.pmod/Tar.pmod:1.19 Rev: lib/modules/GTKSupport.pmod/MenuFactory.pmod:1.8 Rev: lib/modules/Getopt.pmod:1.26 Rev: lib/modules/Languages.pmod/PLIS.pmod:1.15 Rev: lib/modules/Locale.pmod/module.pmod:1.16 Rev: lib/modules/MIME.pmod/module.pmod:1.6 Rev: lib/modules/Parser.pmod/C.pmod:1.38 Rev: lib/modules/Parser.pmod/XML.pmod/DOM.pmod:1.10 Rev: lib/modules/Parser.pmod/XML.pmod/NSTree.pmod:1.7 Rev: lib/modules/Parser.pmod/XML.pmod/Tree.pmod:1.25 Rev: lib/modules/Process.pmod:1.38 Rev: lib/modules/Protocols.pmod/DNS.pmod:1.71 Rev: lib/modules/Protocols.pmod/HTTP.pmod/Query.pike:1.48 Rev: lib/modules/Protocols.pmod/HTTP.pmod/Server.pmod/Request.pike:1.15 Rev: lib/modules/Protocols.pmod/IMAP.pmod/parse_line.pike:1.26 Rev: lib/modules/Protocols.pmod/IMAP.pmod/server.pike:1.15 Rev: lib/modules/Protocols.pmod/IMAP.pmod/types.pmod:1.28 Rev: lib/modules/Protocols.pmod/IRC.pmod/Error.pmod:1.4 Rev: lib/modules/Protocols.pmod/IRC.pmod/Raw.pike:1.7 Rev: lib/modules/Protocols.pmod/Ident.pmod:1.10 Rev: lib/modules/Protocols.pmod/LDAP.pmod/protocol.pike:1.9 Rev: lib/modules/Protocols.pmod/Line.pmod:1.21 Rev: lib/modules/Protocols.pmod/LysKOM.pmod/Helper.pmod:1.7 Rev: lib/modules/Protocols.pmod/LysKOM.pmod/Raw.pike:1.14 Rev: lib/modules/Protocols.pmod/NNTP.pmod:1.11 Rev: lib/modules/Protocols.pmod/TELNET.pmod:1.19 Rev: lib/modules/Protocols.pmod/X.pmod/KeySyms.pmod:1.3 Rev: lib/modules/Protocols.pmod/X.pmod/Requests.pmod:1.32 Rev: lib/modules/Protocols.pmod/X.pmod/Xlib.pmod:1.48 Rev: lib/modules/Protocols.pmod/X.pmod/_Xlib.pmod:1.18 Rev: lib/modules/Remote.pmod/connection.pike:1.25 Rev: lib/modules/SSL.pmod/cipher.pike:1.21 Rev: lib/modules/SSL.pmod/connection.pike:1.24 Rev: lib/modules/SSL.pmod/handshake.pike:1.30 Rev: lib/modules/SSL.pmod/https.pike:1.13 Rev: lib/modules/SSL.pmod/packet.pike:1.12 Rev: lib/modules/SSL.pmod/session.pike:1.21 Rev: lib/modules/SSL.pmod/sslfile.pike:1.51 Rev: lib/modules/SSL.pmod/state.pike:1.15 Rev: lib/modules/Sql.pmod/postgres.pike:1.19 Rev: lib/modules/Standards.pmod/ASN1.pmod/Encode.pmod:1.9 Rev: lib/modules/Standards.pmod/ASN1.pmod/Types.pmod:1.21 Rev: lib/modules/Standards.pmod/EXIF.pmod:1.16 Rev: lib/modules/Standards.pmod/ID3.pmod:1.8 Rev: lib/modules/Standards.pmod/PKCS.pmod/PFX.pmod:1.7 Rev: lib/modules/Standards.pmod/PKCS.pmod/Signature.pmod:1.7 Rev: lib/modules/Stdio.pmod/Readline.pike:1.44 Rev: lib/modules/Stdio.pmod/Terminfo.pmod:1.14 Rev: lib/modules/Stdio.pmod/module.pmod:1.163 Rev: lib/modules/String.pmod/Elite.pmod:1.3 Rev: lib/modules/String.pmod/module.pmod:1.10 Rev: lib/modules/Tools.pmod/AutoDoc.pmod/CExtractor.pmod:1.25 Rev: lib/modules/Tools.pmod/AutoDoc.pmod/DocParser.pmod:1.54 Rev: lib/modules/Tools.pmod/AutoDoc.pmod/MirarDocParser.pike:1.19 Rev: lib/modules/Tools.pmod/AutoDoc.pmod/PikeExtractor.pmod:1.30 Rev: lib/modules/Tools.pmod/AutoDoc.pmod/PikeParser.pike:1.32 Rev: lib/modules/Tools.pmod/AutoDoc.pmod/ProcessXML.pmod:1.51 Rev: lib/modules/Tools.pmod/PEM.pmod:1.9 Rev: lib/modules/Tools.pmod/Shoot.pmod/module.pmod:1.6 Rev: lib/modules/Tools.pmod/Standalone.pmod/assemble_autodoc.pike:1.25 Rev: lib/modules/Tools.pmod/X509.pmod:1.17 Rev: lib/modules/Tools.pmod/_PEM.pmod:1.5 Rev: lib/modules/Tools.pmod/sed.pmod:1.5 Rev: lib/modules/Web.pmod/Crawler.pmod:1.14 Rev: lib/modules/_Image.pmod/Fonts.pmod:1.10 Rev: lib/modules/_Image.pmod/module.pmod:1.32 Rev: lib/modules/_Image_XCF.pmod:1.20 Rev: lib/modules/_Image_XPM.pmod:1.13 Rev: src/modules/Gz/flushtest.pike:1.3 Rev: src/modules/HTTPLoop/test.pike:1.3 Rev: src/modules/HTTPLoop/wwwserver.pike:1.5 Rev: src/modules/_Charset/module.pmod.in:1.28 Rev: src/modules/files/socktest.pike:1.21 Rev: src/post_modules/GTK/new_build_pgtk.pike:1.22 Rev: src/post_modules/GTK/output/doc-pikeref.pike:1.13 Rev: src/post_modules/GTK/output/few.pike:1.2 Rev: src/post_modules/GTK/output/split.pike:1.11 Rev: src/post_modules/Unicode/make_canonicals.pike:1.2 Rev: src/post_modules/Unicode/make_decompose.pike:1.4 Rev: src/post_modules/Unicode/make_wordbits.pike:1.2 Rev: src/post_modules/Unicode/test.pike:1.6 --- bin/fake_dynamic_load.pike | 2 +- bin/httpd.pike | 4 +- bin/install.pike | 32 ++++----- bin/mkpeep.pike | 24 +++---- bin/tarfilter.pike | 4 +- bin/test_pike.pike | 4 +- bin/unbug | 20 +++--- lib/modules/ADT.pmod/struct.pike | 10 +-- .../Audio.pmod/Format.pmod/module.pmod | 14 ++-- lib/modules/Calendar.pmod/Events.pmod | 2 +- lib/modules/Calendar.pmod/Time.pmod | 6 +- lib/modules/Calendar.pmod/Timezone.pmod | 4 +- lib/modules/Calendar.pmod/YMD.pmod | 12 ++-- lib/modules/Calendar.pmod/mkrules.pike | 10 +-- lib/modules/Colors.pmod | 2 +- lib/modules/Crypto/_rsa.pike | 8 +-- lib/modules/Crypto/des3.pike | 4 +- lib/modules/Crypto/dsa.pike | 6 +- lib/modules/Crypto/hmac.pike | 4 +- lib/modules/Crypto/randomness.pmod | 4 +- lib/modules/Crypto/rsa.pike | 6 +- lib/modules/Filesystem.pmod/System.pike | 30 ++++----- lib/modules/Filesystem.pmod/Tar.pmod | 4 +- lib/modules/GTKSupport.pmod/MenuFactory.pmod | 2 +- lib/modules/Getopt.pmod | 2 +- lib/modules/Languages.pmod/PLIS.pmod | 14 ++-- lib/modules/Locale.pmod/module.pmod | 6 +- lib/modules/MIME.pmod/module.pmod | 8 +-- lib/modules/Parser.pmod/C.pmod | 8 +-- lib/modules/Parser.pmod/XML.pmod/DOM.pmod | 2 +- lib/modules/Parser.pmod/XML.pmod/NSTree.pmod | 4 +- lib/modules/Parser.pmod/XML.pmod/Tree.pmod | 14 ++-- lib/modules/Process.pmod | 8 +-- lib/modules/Protocols.pmod/DNS.pmod | 36 +++++----- .../Protocols.pmod/HTTP.pmod/Query.pike | 36 +++++----- .../HTTP.pmod/Server.pmod/Request.pike | 14 ++-- .../Protocols.pmod/IMAP.pmod/parse_line.pike | 40 +++++------ .../Protocols.pmod/IMAP.pmod/server.pike | 2 +- .../Protocols.pmod/IMAP.pmod/types.pmod | 4 +- .../Protocols.pmod/IRC.pmod/Error.pmod | 2 +- lib/modules/Protocols.pmod/IRC.pmod/Raw.pike | 2 +- lib/modules/Protocols.pmod/Ident.pmod | 6 +- .../Protocols.pmod/LDAP.pmod/protocol.pike | 24 +++---- lib/modules/Protocols.pmod/Line.pmod | 4 +- .../Protocols.pmod/LysKOM.pmod/Helper.pmod | 2 +- .../Protocols.pmod/LysKOM.pmod/Raw.pike | 10 +-- lib/modules/Protocols.pmod/NNTP.pmod | 4 +- lib/modules/Protocols.pmod/TELNET.pmod | 8 +-- .../Protocols.pmod/X.pmod/KeySyms.pmod | 8 +-- .../Protocols.pmod/X.pmod/Requests.pmod | 20 +++--- lib/modules/Protocols.pmod/X.pmod/Xlib.pmod | 20 +++--- lib/modules/Protocols.pmod/X.pmod/_Xlib.pmod | 4 +- lib/modules/Remote.pmod/connection.pike | 14 ++-- lib/modules/SSL.pmod/cipher.pike | 10 +-- lib/modules/SSL.pmod/connection.pike | 12 ++-- lib/modules/SSL.pmod/handshake.pike | 26 ++++---- lib/modules/SSL.pmod/https.pike | 6 +- lib/modules/SSL.pmod/packet.pike | 14 ++-- lib/modules/SSL.pmod/session.pike | 10 +-- lib/modules/SSL.pmod/sslfile.pike | 34 +++++----- lib/modules/SSL.pmod/state.pike | 8 +-- lib/modules/Sql.pmod/postgres.pike | 4 +- .../Standards.pmod/ASN1.pmod/Encode.pmod | 14 ++-- .../Standards.pmod/ASN1.pmod/Types.pmod | 22 +++---- lib/modules/Standards.pmod/EXIF.pmod | 4 +- lib/modules/Standards.pmod/ID3.pmod | 4 +- lib/modules/Standards.pmod/PKCS.pmod/PFX.pmod | 2 +- .../Standards.pmod/PKCS.pmod/Signature.pmod | 4 +- lib/modules/Stdio.pmod/Readline.pike | 66 +++++++++---------- lib/modules/Stdio.pmod/Terminfo.pmod | 10 +-- lib/modules/Stdio.pmod/module.pmod | 24 +++---- lib/modules/String.pmod/Elite.pmod | 6 +- lib/modules/String.pmod/module.pmod | 8 +-- .../Tools.pmod/AutoDoc.pmod/CExtractor.pmod | 2 +- .../Tools.pmod/AutoDoc.pmod/DocParser.pmod | 8 +-- .../AutoDoc.pmod/MirarDocParser.pike | 20 +++--- .../AutoDoc.pmod/PikeExtractor.pmod | 4 +- .../Tools.pmod/AutoDoc.pmod/PikeParser.pike | 10 +-- .../Tools.pmod/AutoDoc.pmod/ProcessXML.pmod | 2 +- lib/modules/Tools.pmod/PEM.pmod | 2 +- lib/modules/Tools.pmod/Shoot.pmod/module.pmod | 2 +- .../Standalone.pmod/assemble_autodoc.pike | 4 +- lib/modules/Tools.pmod/X509.pmod | 6 +- lib/modules/Tools.pmod/_PEM.pmod | 4 +- lib/modules/Tools.pmod/sed.pmod | 8 +-- lib/modules/Web.pmod/Crawler.pmod | 4 +- lib/modules/_Image.pmod/Fonts.pmod | 2 +- lib/modules/_Image.pmod/module.pmod | 6 +- lib/modules/_Image_XCF.pmod | 2 +- lib/modules/_Image_XPM.pmod | 4 +- src/modules/Gz/flushtest.pike | 10 +-- src/modules/HTTPLoop/test.pike | 4 +- src/modules/HTTPLoop/wwwserver.pike | 6 +- src/modules/_Charset/module.pmod.in | 4 +- src/modules/files/socktest.pike | 14 ++-- src/post_modules/GTK/new_build_pgtk.pike | 32 ++++----- src/post_modules/GTK/output/doc-pikeref.pike | 8 +-- src/post_modules/GTK/output/few.pike | 4 +- src/post_modules/GTK/output/split.pike | 10 +-- src/post_modules/Unicode/make_canonicals.pike | 2 +- src/post_modules/Unicode/make_decompose.pike | 2 +- src/post_modules/Unicode/make_wordbits.pike | 4 +- src/post_modules/Unicode/test.pike | 6 +- 103 files changed, 514 insertions(+), 514 deletions(-) diff --git a/bin/fake_dynamic_load.pike b/bin/fake_dynamic_load.pike index 32f1f477e4..4bd4017622 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 a6130709a3..caeeff58a4 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 d25f20eb10..6277152e22 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 db104dd5c7..045e9e36f8 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 c82b274747..9b47b943d2 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 fdeeea6b95..0cd08b4f1e 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 387bfe1e0c..87cf39b58d 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 a0ad2de377..d5188117fc 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 6a17ce9a4e..088e22fa45 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 9e2f176e1b..a4a2366cf5 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 e4b011241c..b135704c43 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 412ea12179..7f659f4ed6 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 2170fd3e46..bf2f320714 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 36bd390b9a..97e367aba1 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 582ad0613b..598e53ef5a 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 d52b094afc..09332b0e38 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 73589865cc..371f5fe8f9 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 4552890335..ed7e4f8a8f 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 5660b2073f..a39f0faa17 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 ee946c0a55..f5751f86db 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 d7d2afa0e1..735c4c7445 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 daf65c229c..31c95bb2b9 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 b6623f0a65..a6dac820ce 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 b55321fceb..173d3024e1 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 0db1da7568..668bfa6b51 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 be0851b02c..cb1b040f79 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 3ed0ac240e..59067aa702 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 46852f3e45..c9d20cdcd0 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 efdeb480ff..82da603831 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 8ca2a4b678..0de7c88499 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 3389577309..fdaf083454 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 b267e9b3a8..5d45bd1388 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 12ca4dfe50..a7a59a603a 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 3ebf73652d..966ebda94b 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 9614c22db0..bced213c58 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 fd6f17ef30..9414981dc8 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 ea73d0dfc6..252c88d613 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 28a269590c..396d0dc409 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 b13f624ab5..a9719b71e7 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 b43c113d01..7e9f8c3fae 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 c4ad9fd3ee..1b4aca4140 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 b67d7b26f8..030ebbf53d 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 1926ab60f9..f60fd4e1b5 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 736ed94fff..7994a37dfd 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 5a98a9d943..58b0e5e6e3 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 64b95df5c7..a218739302 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 4d16e8b5bc..fc725775b3 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 9fb2851bfa..2e6cc1a01d 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 0342669820..4659580901 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 f2c2323fa7..48d3c0ed41 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 8b4f9354c1..b0af20db8c 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 fcc1f9c249..e6b41734cf 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 929edd0aa2..b4d87a51b2 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 2fbdb84723..40b7058b72 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 4aa1c217db..1ddb1902f2 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 ede0210a08..4a10888b38 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 25a1482e3e..5728495e2e 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 89d2ac5f94..c693b8135c 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 61e87ee724..612d1ff408 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 0e271fc025..2faff3cefc 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 237a06183f..c01a2e66f8 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 227893e937..833dab9d48 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 616cc77a77..3eeb67b9c4 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 0b8c4a5767..4ce77f217f 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 614d45c5c8..cf1a13ef43 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 437b3fbeb2..b52be75e6a 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 8bff6ab34f..d8721e01f5 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 08b3475c23..ebd8c4e895 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 c2dc084f5f..c7eb96e538 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 95f33f89b8..ec0c1888a0 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 a9060b6596..cb8de8464e 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 729903481c..cd567a2c9a 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 a7bd6d7b9c..168ce1e7cb 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 eb4de8d812..64a2900713 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 f1ae5250c1..4f8549ecfd 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 7f1c87e012..84c83195d1 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 c76cb1dfd7..ad688903ee 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 911d1143c0..11a323eb81 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 ff925d169a..0c36add2b8 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 ca3a05c3f8..fce7a3e363 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 81bdd5857b..3f3281d01f 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 1224cb5a60..988e489ce2 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 2e2eebb853..5c27e064cf 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 1c97303d96..a23987fba1 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 74ae2e2084..684aa1dd12 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 989272fcf5..1cdb37b0fe 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 70b43f0662..2274bd7288 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 915e37aa1b..31c6c7536e 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 c5b0d2f05f..bc9bb0dc61 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 99acbbe19a..b62f881ad8 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 c58aa3f558..c2f37cead3 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 58d300b4df..28584148a2 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 e5b029b30d..4d3b6fe7df 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 6839792ad6..f00ef77ef9 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 539df2bc2c..87433773ad 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 e8c44300ba..8fdb99f1bd 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 e37f15e06c..c3cb7d0b51 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 9e1b999262..88c30afea5 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 77ae4c6bf6..475c7b6a96 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 a43d432507..1d545a0272 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 f00e1c4fa3..0f7e529ca9 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 2961666e6f..0f564b11b5 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 12509f5ba4..5d86910af1 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 ) -- GitLab