[PATCH] Prevent mod_proxy_http from adding X-Forwarded-* headers

When used as a reverse proxy via the ProxyPass directive, Apache’s mod_proxy_http module sneakily inserts the following headers into the request sent to the remote server:

  • X-Forwarded-For: The IP address of the client.
  • X-Forwarded-Host: The original host requested by the client in the Host HTTP request header.
  • X-Forwarded-Server: The hostname of the proxy server.

This behavior may be undesirable if we don’t want the remote server to know the request is coming from a proxy. Unfortunately, mod_proxy_http provides no mechanism to turn off the injection of these headers.

The following patch implements support for a new proxy-noxforwardedheaders environment variable. If this variable is set (see SetEnv), mod_proxy_http won’t add any X-Forwarded-* headers to the request.

Continue reading

Posted in IT | 1 Comment

[PATCH] Add support for Dovecot to mod_auth_imap2

I’ve been using mod_auth_imap for authenticating against IMAP for several years. When I recently switched to Dovecot from Courier IMAP, mod_auth_imap2 stopped working.

In browsing through the source code for mod_auth_imap2, I came to two realizations:

  1. mod_auth_imap2 doesn’t expect the IMAP server to send an untagged response in reply to a LOGIN command, and
  2. there’s a bug in the code that skips untagged responses, so inserting it in the right spot wouldn’t have worked without fixing it first.

The following patch, which I sent to the author and went unanswered, corrects these problems. It’s not very pretty, but hey, neither is the original code.

Continue reading

Posted in IT | Leave a comment

[PATCH] Add mod_substitute to www/apache22 in FreeBSD

For some reason, the www/apache22 FreeBSD port does not support the mod_substitute module even though it’s bundled standard with Apache. The following patch enables building of this useful module, which compiles and works just fine out of the box.

Update: After e-mailing the maintainer, this patch has been officially merged into the port as of March 29, 2011.

Continue reading

Posted in IT | Leave a comment

Cost of equivalent meals at McDonald’s and Burger King

McDonald’s
170 W Campbell Rd, Richardson, TX 75080
Burger King
177 W Campbell Rd, Richardson, TX 75080
Premium Chicken Sandwich, Grilled $3.49 TENDERGRILL Chicken Sandwich $4.79
Small fries $1.00 Small fries $1.99
Cup of water Free Cup of water $0.25
Tax (8.25%) $0.37 Tax (8.25%) $0.56
Total $4.86 Total $7.59
Posted in Reviews | 2 Comments

Sony A55 meets Tamron 17-50 f/2.8, Sigma 17-50 f/2.8 OS HSM — First impressions, sample variance, and auto focus testing

October 18, 2010: Alpha Body Ordered; Lens Research Begins

After trying out an A33 at my local Sony Style store and finding the electronic viewfinder more than adequate, I decided to order an SLT-A55V (body only) from Crutchfield.com. Normally, I would have never thought of Crutchfield as a place to shop for a DSLR camera, so I was surprised to find out that it was not just the only retailer with A55 bodies in stock at the time, but also an authorized Sony distributor—perhaps as a result of all the Sony audio gear they carry.

Paranoid that the camera would sell out before I got home, I used my phone to place an order right from the parking garage of Galleria Dallas. Less than ten minutes later, a gentleman from Crutchfield called to verify my order. He was very polite and sounded American, which was pleasantly surprising.

Now, it was time to decide on a starter lens. I compared the Tamron SP AF 17-50mm f/2.8 XR Di II LD Aspherical [IF], the Sigma 18-50mm F2.8 EX DC Macro, and the new Sigma 17-50mm F2.8 EX DC OS HSM. Continue reading

Posted in Photography, Reviews | 2 Comments

My successful complaint to Verizon

After four months of billing hell, fully prepared to take Verizon to small claims court to recover more than a hundred dollars lost to billing errors, bank fees, and unanswered certified mail, I sent the following final letter to Verizon, at two new addresses I found in my Terms of Service agreement:

Continue reading

Posted in Bitching | 9 Comments

Where to buy Argentine food and groceries in Dallas/Fort Worth (DFW)

Here are a few restaurants and stores specializing in Argentinean food and groceries in the Dallas/Fort Worth metroplex. If you know of any other spots, please leave a comment and I’ll be happy to add them to the list.

La Carreta Argentina (formerly Don Panza) — CLOSED
1115 N Beckley Ave, Dallas, TX 75203 • 214-944-5300
Empanadas, milanesas, lomito sandwiches, dense-crust pizza, panqueques con dulce de leche.

Shine’s Mediterranean Market — CLOSED
14902 Preston Rd, Dallas, TX 75254 • 972-763-1842
Alfajores, dulce de leche, dulce de batata, dulce de membrillo, yerba mate, empanadas, chimichurri, lomito sandwiches.

Argentina Bakery
3401 W Airport Fwy, Irving, TX 75062 • 972-252-4809
Dulce de leche, facturas (pastries), vainillas (ladyfingers), yerba mate, empanadas, sandwiches de miga.

European Market & Deli
11613 N Central Expy, Dallas, TX 75243 • 214-696-5441
Ensalada rusa (Olivier salad) vegetable mix.

Jimmy’s Food Store
4901 Bryan St, Dallas, TX 75206 • 214-823-6180
Yellow polenta amarilla, white polenta blanca.

Kegs & Barrels
1905 W 15th St,
Plano, TX 75075 972-578-3132
Cerveza Quilmes beer.

4. Shine’s Mediterranean Market

4 star rating

10 Reviews

Categories: Grocery , Middle Eastern

14902 Preston Rd
Dallas, TX 75254
(972) 763-1842

Posted in Uncategorized | 3 Comments

Making fast food orders annoying

At the McDonald’s by my house there’s a certain manager who, when presented with a Sausage McMuffin order, will always ask, “With egg?” Considering that:

  • the sandwich comes with an egg by default,
  • there’s only one (egg-inclusive) price on the board, and
  • the egg is clearly visible in the picture,

I find this question retarded. If I wanted my sandwich to be any different from the picture, I would explicitly customize my order.

This is also why I hate Subway—when I order something off the board, they’ll still ask me to list every single topping I want. I’ve tried saying “whatever it comes with” to no avail. What’s the point of having a board of predefined sandwich configurations if I always have to build mine from scratch?

And that’s my Monday morning rant.

Posted in Bitching | Leave a comment

How to get Windows 7 to synchronize the time at an interval of your choosing

Out of the box, Windows 7 synchronizes the system clock with time.windows.com every night at 1:00 a.m.

The actual synchronization with the NTP server is performed by the Windows Time service (W32Time). Windows Time has two modes of operation:

  1. Run 24/7 and keep the clock synchronized automatically, or
  2. start on demand, synchronize the clock, and stop.

Number 2 is the default behavior on a standard installation of Windows 7. Rather than run at all times, Windows Time has a startup type of Manual, and every night at 1 a.m. the system starts the service, synchronizes the clock, and stops the service. This is accomplished with a scheduled task. In other words, the scheduling is left to the Task Scheduler service rather than the Windows Time service.

Setting the update interval

If once a day at 1 a.m. isn’t good enough of an update interval for you, Windows 7 can be set to synchronize the clock with a frequency of your choosing. You can either preserve the default mode of operation and change when and how often the scheduled task runs, or drop the Task Scheduler approach in favor of the scheduling built into the Windows Time service.

Using the Task Scheduler service (default)

Pros: No need to run an extra service; changing the update interval is easier.

Cons: Since the Windows Time service is stopped, when you look in the Internet Time tab of the Date and Time dialog box, you won’t see when the last successful synchronization occurred or when the next synchronization will take place. Instead, you’ll see “This computer is set to automatically synchronize on a scheduled basis.” You can use the Event Viewer (eventvwr.msc) to find out when the clock was last synchronized.

  • Run taskschd.msc.
  • Open the Task Scheduler Library\Microsoft\Windows\Time Synchronization folder.
  • Select the SynchronizeTime task and go to Properties.
  • If you’re feeling curious, check out the Actions tab. The task_started parameter passed to W32Time instructs the service to start, synchronize the clock, and stop immediately.
  • Select the Triggers tab.
  • Modify the schedule to your liking.

Using the Windows Time service

Pros: When you look in the Internet Time tab of the Date and Time dialog box, you will see when the last successful synchronization occurred (“The clock was successfully synchronized with <server> on <date> at <time>.”) and when the next synchronization will take place (“Next synchronization: <date> at <time>.”).

Cons: Running the Windows Time service 24/7 takes up extra memory; changing the update interval involves modifying the registry.

  • Run taskschd.msc.
  • Open the Task Scheduler Library\Microsoft\Windows\Time Synchronization folder.
  • Disable the SynchronizeTime task.
  • Run regedit.exe.
  • Open the HKEY_LOCAL_MACHINE\System\CurrentControlSet\services\W32Time\TimeProvider\NtpClient key.
  • Set SpecialPollInterval to the desired update interval, in seconds.
  • Run services.msc.
  • Select the Windows Time service.
  • Set Startup Type to Automatic.
  • Start the service.

Using a better time server

time.windows.com, Microsoft’s time server, has often been found to be inaccurate and/or unresponsive over the past few years. For increased reliability, I suggest using a third-party NTP server instead.

For a list of public time server pools in your area, please visit http://support.ntp.org/bin/view/Servers/NTPPoolServers.

Note

This article applies to computers running Windows 7 stand-alone or as part of a workgroup, not a domain.

Posted in Uncategorized | 8 Comments

Courtesy Nissan sucks again

Following the recent wreck of my Versa, I found myself back on the market for a new Nissan Altima.

After a decent buying experience with Courtesy Nissan one and a half years back, I requested a quote from their Internet department via edmunds.com. I had done my homework, searched their inventory on-line, and clearly requested a quote on a specific configuration for which they only had one matching vehicle left. One business day later, and all I ever got back from them was a stupid, generic canned response with no quote which ignored every question I had posed in my request, and instead asked which color, features and options I was looking for.

Insulted, I printed the configuration and pricing from edmunds.com and came in to negotiate in person. Assuming I was unaware of their existence, Sales first tried to keep the Bottom Line Model Year End Sales Event ($1,500) and Holiday Bonus ($500) rebates from the manufacturer to themselves. When I brought up the rebates, they then tried to sell me the car for MSRP minus rebates. One hour, three quotes and a near-walkout later, I finally got a decent deal.

The car was delivered to me after closing on a dark rainy night. The back of the vehicle was wet and the interior was not in showroom clean condition. Upon later inspection in a well-lit area, I discovered paint damage along the edge of one of the back doors. I brought the car in the next morning and, while Courtesy Nissan agreed to do a touch-up at no cost, it was done extremely poorly by merely applying a single layer of basecoat to the damaged area which had been exposed for an indefinite period of time.

Over the next few days, I was asked to come in two or three more times to sign forms that Finance had forgotten to have me sign. They backdated the forms to make it look like they had been signed the first day.

The vehicle was delivered to me with a single remote and key. I was told that the car was originally from another dealership, and that they would have to look for the spare key the next day. I came in the next day and was told they had been unable to find the spare, and that a new one would have to be made. I took the car to Service, where I was given a new remote. They said that the mechanical key would have to be special ordered, and to check back in three business days. The key did not arrive until six business days later. I got a call suggesting that I make an appointment with Service to have the key programmed to my car, but I tried to get in touch with the appropriate service person and he never called me back. This has still not been taken care of.

Today, I got an e-mail from Courtesy Nissan advising me that I would soon be receiving the official post-purchase survey from Nissan, and stressing how important my full satisfaction was to them. Linked from the e-mail was their own unofficial survey, which they send to customers to test the waters before they complete the official survey. I took the opportunity to describe my horrible experience, and they have already tried to get in touch with me twice.

Unfortunately for them, it is too late to change my mind and Nissan will be sure to hear about this.

Posted in Bitching | 2 Comments