|
|
MiscNokia 6555 iSync Plugin UpdateI just did an update of the Nokia 6555 plugin. This new version is more of a professional release and less of a hack. Many parts were added and deleted (too many to list). It was also put through a complete test suite with over 1200 points tested. As a note, I have disabled GPRS as I do not have the service with AT&T and can not completely test the reliability. You can get the new release over at the software page. Enjoy.
Temple University Eagle WikiFor those of you involved in the madness known as Temple's Computer Science department, I just revamped the front page of the eagle wiki for the Spring 2008 semester. Feel free to add any class listing you wish as you begin to grind the books again. For those of you not familiar with eagle, it's basically a server that gets beaten on every semester to provide odd services in the here and now without having to wait for any bureaucracy. It current provides various version control resources, a wiki, and a bunch of virtual machines running various specialized tasks.
verizon's dns resolution is brokenMy local coffee shop, which I visit every once in a while when I get tired of doing work in my apartment is nice enough to offer its customers internet access through a Verizon wifi access point. Tonight, I mis-typed a URL and to my surprise it took me to a Verizon landing page. Their description of the site when you click on the "About This Page" link is the following: "You reached the preceding search results page because Verizon is using specific Domain Name Service (DNS) Servers to look up domain names. These DNS Servers eliminate dead-end "no such name" error pages you can encounter as you surf the web. This search service is designed to make your web surfing experience more productive. No software was installed on your computer for this service to work." Not quite, I reached this page because Verizon decided to poison my DNS with spam. They do have a so-called "opt-out" page, but it just links you to a site that basically tells you to set static dns servers. DHCP is there for a reason and I refuse to change my settings every time I change locations. Another problem with this is with the users who don't even know what DNS is and don't have a clue that Verizon is profiting by tracking all of their mistyped searches. Good thing I have Comcast at home. Oh wait, they do the same type of thing with sandvine and forged acks. Nevermind.
Before there was main, there was exitA recent post on Apple's SciTech mailing list detailed someone's experience regarding a problem they were having while debugging. gdb displayed different output than what was being displayed when the program was run from a normal command line shell. I set out to duplicate this behavior in hope of solving his problem. Why you say? Because I can. :) Although his specific problem is still in limbo at the time I'm writing this, I posted a reply to the list with my thoughts on what was happening. Initially I had assumed it was related to a call of ptrace with xnu's hackish little PT_DENY_ATTACH, however, this was quickly thrown out once I released he had actually set a breakpoint on the main function and the program still executed and successfully completed with no break. My second thought was the execution of code before the main function. This would require either some sort of weird library linkage or the creation of code in a global scope. For simplicity's sake, I choose the latter. So this basically comes down to being able to exit the program before it even reaches the main() function. It just feels a bit odd, no? An example that demos this concept follows. Since this code does some nifty kernel specific calls, this is likely specific to Mac OS X.
// stolen from an ADC sample info.kp_proc.p_flag = 0; mib[0] = CTL_KERN; size = sizeof(info); return ( (info.kp_proc.p_flag & P_TRACED) != 0 ); // code to run before the main() premain::premain( void ) { // instance in global scope int main(void){ I'm sure there's a few evil uses for this, but there's also a few legitimate cases, such as adding another level of obfuscation on top of copy protection schemes. Odds are, someone isn't going to bother with a debugger before they run a program to check if it's malignant or not, so I'd bet on the copy protection application. Any thoughts?
new mac theme in firefoxAfter messing around with the new firefox beta, I ran into this. It's a new prototype for the default theme. It kinda reminds me of safari a bit, but I like it.
ripping a div from html with phpI just wrote a little php snippet to grab a div from another website. It should work on most cases with a bit of tweaking, but it's not something you want to use on another site that changes their layout often. Keep in mind that this isn't all that robust, you really want to tweak this to suit your needs.
// the web site to grab it from // the div id to get // read in the file to a string // cleanup the html before we try to search it // find the offset of the div we're looking for // adjust our output to the offset echo $contents; ?> Any suggestions on alternate ways of doing this? I could improve upon this method, but it just feels like too much of a hack to really bother with.
AndroidWatcher.comI just launched a new site for discussion about the new Android platform from Google and the Open Handset Alliance. Currently it's a bit rough around the edges, but I'll be cleaning it up over the upcoming weeks.
Displayutil moves to Google CodeI just want to thank everyone who's been submitting patches for displayutil. The project has outgrown the side notes on my blog and has moved to a new home at google code. There's still a few rough edges there as I set everything up, but the download page has been moved there as well as the ChangeLog.
Installing OpenVPN on LeopardUPDATE: TunnelBlick is now Leopard compatible. The information in this article is outdated and should not be used. Well, it looks like there's now support for OpenVPN with Mac OS X 10.5 with the recent release of new tun/tap kexts. Just download the kext src from here and read the INSTALL file to get it going. Then you can install openvpn using the 10.5 unstable branch of fink. I'm currently using this setup with success on a statically keyed vpn with a 9a466 client. If you need help on setting up an openvpn user and group, the following commands should work. Just make sure the uid/gid 12345 doesn't overlap with anything you already have. And it goes without saying that this is for 10.5 only. /usr/sbin/dseditgroup -o create -g 12345 openvpn /usr/bin/dscl localhost create /Local/Users/openvpn /usr/bin/dscl localhost create /Local/Users/openvpn UniqueID 12345 /usr/bin/dscl localhost create /Local/Users/openvpn PrimaryGroup 12345 /usr/bin/dscl localhost create /Local/Users/openvpn RealName "OpenVPN" Enjoy.
Displayutil Goes Open SourceI just released displayutil under a modified MIT license. You can download the source from the displayutil download page. The next release (v0.04) will concentrate on additional refactoring as well as a ton of error checking routines. Enjoy. |
Poll |
Recent comments
31 weeks 2 days ago
31 weeks 2 days ago
31 weeks 5 days ago
39 weeks 5 days ago
41 weeks 2 days ago
41 weeks 2 days ago
42 weeks 6 days ago
43 weeks 2 hours ago
43 weeks 1 day ago
43 weeks 2 days ago