--- linkchecker.module	2011-01-26 15:26:37.000000000 -0600
+++ linkcheckerNew.module	2011-01-26 15:19:51.000000000 -0600
@@ -219,7 +219,7 @@ function _linkchecker_status_handling($l
             _linkchecker_link_replace($node->$text_item, $link->url, $response->redirect_url);
           }
 
-          // Search for CCK-fields of types 'link' and 'text'.
+          // Search for CCK-fields of types 'link', 'text', and 'cck_redirection'.
           if (module_exists('content')) {
             $fields = content_fields(NULL, $node->type);
             foreach ($fields as $field) {
@@ -234,6 +234,11 @@ function _linkchecker_status_handling($l
                     _linkchecker_link_replace($node->{$field['field_name']}[$delta]['value'], $link->url, $response->redirect_url);
                   }
                 }
+                elseif (module_exists('cck_redirection') && $field['type'] == 'cck_redirection') {
+                  foreach($node->$field['field_name'] as $delta => $item) {
+                    _linkchecker_link_replace($node->{$field['field_name']}[$delta]['value'], $link->url, $response->redirect_url);
+                  }
+                }
               }
             }
           }
@@ -478,7 +483,7 @@ function _linkchecker_add_node_links($no
     $text_items[] = _filter_url(url($node->url, $url_options), $node->format);
   }
 
-  // Search for CCK-fields of types 'link' and 'text'.
+  // Search for CCK-fields of types 'link', 'text', 'cck_redirection'.
   if (module_exists('content')) {
     $fields = content_fields(NULL, $node->type);
     foreach ($fields as $field) {
@@ -496,6 +501,14 @@ function _linkchecker_add_node_links($no
             $text_items[] = _filter_url($item['value'], $node->format);
           }
         }
+        elseif (module_exists('cck_redirection') && $field['type'] == 'cck_redirection') {
+          foreach ($node->$field['field_name'] as $delta => $item) {
+            if (!empty($item['value'])) {
+              // Make non-absolute urls absolute or they are not found by _filter_url().
+              $text_items[] = _filter_url(url($item['value'], $url_options), $node->format);
+            }
+          }
+        }
       }
     }
   }
@@ -1083,7 +1096,7 @@ function _linkchecker_link_replace(&$tex
     $old_html_link = check_url($old_link);
     $new_html_link = check_url($new_link);
 
-    // Replace links in CCK link and text and Links weblink fields.
+    // Replace links in CCK link, text, cck_redirection, and Links weblink fields.
     if (in_array($text, array($old_html_link_fqdn, $old_html_link, $old_link_fqdn, $old_link))) {
       // Keep old and new links in the same encoding and format and short or fully qualified.
       $text = str_replace($old_html_link_fqdn, $new_html_link_fqdn, $text);
