Fenux.Net - The Life of a Geek
GeekTao.net
Posted on 8/20/2005 7:01 pm in GeekTao.net
I finally broke down and looked at the code for MySQL, particularly the portion for creating MD5 hashes.  Apparently, MySQl, takes the result that was being used in the SASL code and converts it to an ASCII representation of the result in hexadecimal notation.  It was an easy fix to checkpw.c to make it operate the same way.  I've included the function where I made the changes.  My notes are in bold.  Code that we're not using anymore is in italics.
GeekTao.net
Posted on 8/20/2005 4:58 pm in GeekTao.net
I've done some more investigation into my authentifcation issue.  The first problem was that the MD5 encryption technique that SASL used to check plaintext passwords used a salt.  This is something that the passwords I have don't use.  I modified the checkpw.c file in sasl2 to disable that function.  I've also added a few lines to log the secret it's trying to compare the password with to the system log.  The result for my test password was "YjM-^VÌ{ù^PM-^LØM-^Vó<D®ÜM-".  That doesn't look line any of the encodings MySQL will produce.

Later, I think I'll try to get it to print out the cram-md5 and digest-md5 secrets that it makes.  One of those might be closer.
GeekTao.net
Posted on 8/20/2005 3:56 pm in GeekTao.net
I think I've gotten the mail server portion of my problem figured out. My first attempt will be using the cyrus imapd daemon. I've tried using this system wide before, but it doesn't suit my needs for everything. Fortunately, I can configure it to only work for one domain.
PHP
Posted on 8/20/2005 11:13 am in PHP
I've been working on another PHP-Nuke module for release.  It's called FHome.  It allows the site to display news on the front page the way it's displayed here, as well as allowing the comments to go into the forum.  Apparently I broke part of the code that adds the posts to the forum.  I think I have that fixed now.  This post will actually be a test of that.

I need to remember to write in an admin function to "fix" posts that didn't get posted to the forum correctly.  That way I'll be able to just click and readd them if they screw up rather than doing things the hard way.
Real Life Adventures
Posted on 8/20/2005 11:06 am in Real Life Adventures
I was driving home from work yesterday when the car ran out of gas. It fooled me. It looked like it had enough gas to get to the cheaper gas station, but it didn't. So there I was, in the middle of NW 23rd street with no gas. Luckily I was only about 100 feet from a gas station. I pushed the car myself the rest of the way up the road. Luckily it was flat and not uphill.

I thought I was going to have to wait forever to cross oncoming traffic. It was almost rush hour after all. Luckily a couple of guys in what looked like a city work truck stopped to help. One of them stopped traffic while the other pushed the car from behind. I barely had a chance to thank them before they ran off. If they'd stuck around, I probably would have bought them a drink or something.

I'm thinking that my "Good Deed a Day" [1] program has built me up enough credit to get one when I need it.

[1] - I don't actually get in one a day. It ends up being a couple times a month, but I often use the expression, "I've already done my good deed for the day."
GeekTao.net
Posted on 8/19/2005 10:50 pm in GeekTao.net

I haven't done any work on GeekTao.net in awhile. The main reason has been frustration. One of the big things I wanted to do was to have free web-based email on the site. Currently, this requires me to manually add each user. This is totally unacceptable.

I had an insight into my problem earlier, during a tired stupor. I came up with an idea to integrate Horde for web-based email with PHP-Nuke. The concept has a few requirements that I have yet to totally flesh out, but I think it could work.

The Requirements for Integration:
  • Horde must be configured to use PHP-Nuke's authenification mechanism.
    This part shouldn't be too hard because Horde supports custom authentification modules. The only problem I foresee is making the cookies work between two different subdomains (www.geektao.net and my.geektao.net). That's the way I'd prefer to do it, but I would be willing to sacrifice that feature to make it work.
  • A PHP-Nuke block must be created to display new email notifications and possibly other features.
    This shouldn't be too hard, but I haven't looked into how to do it yet.
  • GeekTao.net will have to use a seperate local mailer that allows for virtual, dynamic users.
    This is the trickiest and most vital part. I need to be able to create email users without adding system users which the server currently requires. This requires GeekTao.net to use a seperate local mailer program, which is possible. I just don't know how to do it yet.

I'm probably forgetting something else that's going to be an obstacle for me, but since this is still in the design stages, that's alright. Before I do any actual coding, I'm going to have to solve the last problem, otherwise, the whole thing probably isn't viable.

Samba
Posted on 8/19/2005 11:09 am in Samba
I had to reinstall Saturn last night. The OS hard drive decided it didn't like me anymore. It's taking forever to get it all back up, but I'm almost there. Next step, getting Samba working again.

I had this problem before but I forget to document it properly, so I've had to figure it out again. When I tried to join the computer the Active Directory domain, it kept giving odd error messages. I'm documenting the fix this time so I don't lose it.

With FreeBSD 5.x, the default Kerberos installation doesn't work with Samba 3.x in ADS mode. You have to deinstall the original Kerberos installation by removing files from /usr/bin and /usr/sbin. Then we have to add 'NO_KERBEROS=true' into our /etc/make.conf file so that it doesn't rebuild it again. Next we have to install Kerberos from the security/krb5 port. After all of that is done, we then have to rebuild Samba so that it uses the new Kerberos installation.

Below are the files to remove the original Kerberos:
  • rm /usr/bin/kinit
  • rm /usr/bin/kdestory
  • rm /usr/bin/klist
  • rm /usr/bin/kpasswd
  • rm /usr/bin/krb5-config
  • rm /usr/bin/ksu
  • rm /usr/bin/verify_krb5_conf
  • rm /usr/bin/kadmin
  • rm /usr/sbin/ktutil
  • rm /usr/sbin/ktstash


PHP
Posted on 8/18/2005 5:44 am in PHP
I've just finished off GeekQuotes v0.10 and made it ready for release. It is currently available in the Downloads section of this site. The module is release under the GPL.

I created this module when I moved my site from PostNuke to PHP-Nuke. I had a bunch of quotes in my database that I wanted to continue using, but PHP-Nuke didn't have a built in Quotes module. I've had to recreate almost all of the code to make it work, but I did borrow bits and pieces of the random display code from PostNuke. When I got ready to release it though, I rewrote the random display code so that I could use a different license to release it.
This Old Site
Posted on 8/17/2005 7:57 pm in This Old Site
I've spent the last day or two working on the general look and feel of this site.  I've been trying to refine it a bit, as well as working on the code underneath.  I've moved the quote block to the header.  I think it's a more efficent use of space.  I've modified the article display page.  I think it looks a lot better now.  I've also modified the display from the content module.  It always bugged me by putting too much space in the article.

I got my hands on a bunch of new fonts recently.  I've used two of them to redo the top logo.  I can't decide if I like the change better or not.  I've also played with the colors in the style sheet.  I think that at least is an improvement.  I've been working on the Meta tags as well.  I modified the main ones, but I haven't gotten dynamic tags working yet.  I'm still trying.

If you wonder why I put so much work into a personal site, it's because this site is a testing ground for new toys.  In addtion, it works as as part of my website portfolio so I want it to look good.  You've got to have good examples to make money doing it.
Coding
Posted on 8/17/2005 4:48 pm in Coding

I was working on my website and saw the following quote come up in my quote list. I didn't know what waterfall programming meant, so I did a search for the quote. I find it interesting that my site (when it was still using Postnuke) came up in the Google results. Made me happy. But the article I found is an interesting read. The quote was actually part of a reader response to the article.

Part of the reason so many companies continue to develop software using variations of waterfall is the misconception that the analysis phase of waterfall completes the design and the rest of the process is just non-creative execution of programming skills.

The article is "Iterative vs. waterfall software development: Why don't companies get it?" by Bill Walton.

It discusses four methodologies for programming. I think I use the third one most often in my work, except that I rarely have a partner to work with.

  • The iterative and incremental approaches involve a number of short cycles in which steps such as requirements gathering, coding, testing and deployment, are conducted to produce small parts of the final project. The software system grows incrementally, and user feedback can be used throughout the process.
  • The waterfall philosophy is a strictly sequential approach in which a project is completed in a series of steps, such as analysis, design, coding, testing and deployment. Each step, such as requirements gathering, is undertaken only once and must be completed and verified before the next phase.
  • Extreme programming is a software development approach built around rapid iterations, an emphasis on code writing and working closely with end users to achieve business results. The 12 basic practices of XP include continual testing and the idea that programmers should work in pairs. (See Computerworld QuickStudy.)
  • Project Management Institute methodology involves recommended best practices that use a cycle of processes -- initiating, planning, executing, controlling and closing -- to manage a project's scope, time, costs, risks and so on.
Page 13 of 29

©2009, Jason Burgess
All Rights Reserved