Wednesday, May 31, 2006

Finally bit the bullet...

and slapped down $200 at Crucial for a long needed 1 Gig DIMM for my 12" Powerbook G4. Wish I'd done it sooner. Noticable performance increase even on stuff that shouldn't (typing within terminal or right now!) and Netbeans is actually usable.

Oh, also saw the 13" MacBooks at the Apple Store in Clarendon, VA. Ambivalent about the 80s retro "chicklet" keyboard, but the feel was better than the old 12" iBooks. Something about the screen aspect ratio was "off" though.

Wednesday, May 17, 2006

Vendors must be starting to "get it!" (or at least feel it!)

I'm not sure about other folks out there, but I lately I've been getting more frequent job inquiries from recruiters in fairly good-sized non-security companies looking for "security researcher" types to help improve their products and product lines. Of course I've "been there, done that" (at Cisco) and the big company life is not at all appealing right now.

But this is one small positive datapoint that perhaps things are starting to improve on the product security front.

Or perhaps things have gotten so bad vendors are desperate to "stop the bleeding."

Thursday, May 04, 2006

Nobody must use Java Regular Expressions

I'm having a hell of a time converting some Python regex's to Java (first rule, you have to double escape everything) and I'm still getting a bunch of nasty exceptions, the "Illegal repetition" error in particular :(

Yes, I'm weak, but once you use Visual C# it is hard to go back.


package regextest;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Main {
public Main() {
}
public static void main(String[] args) {
// Pattern p = Pattern.compile("^\\[char\\speer[\\d+]_[\\d+]*");
// packet = re.compile(r"^char\speer(\d)_(\d+)\[.*{(.+)};$")
Pattern p = Pattern.compile("^\\[char\\speer(\\d)_(\\d+).*$");
Pattern p1 = Pattern.compile(".*\\{(.*)\\};");
Matcher m = p.matcher("[char peer1_2[] = {, 0x03, 0x00, 0x00,
0x31, 0x02 0x5f, 0x53, 0x50, 0x50, 0x31, 0x5f, 0x50, 0x41 };");
Matcher m1 = p1.matcher("[char peer1_2[] = {, 0x03, 0x00,
0x00, 0x31, 0x02 0x5f, 0x53, 0x50, 0x50, 0x31, 0x5f, 0x50, 0x41 };");

if ( m.matches()) {
if ( m.groupCount() > 0 ) {
System.out.println(m.group(1));
System.out.println(m.group(2));
}
} else {
System.out.println("No match");
}

if (m1.matches()) {
System.out.println(m1.group(1));
} else {
System.out.println("You suck!");
}
}
}