Index: wp-includes/post-template.php
===================================================================
--- wp-includes/post-template.php	(revision 7923)
+++ wp-includes/post-template.php	(working copy)
@@ -304,7 +304,8 @@
 		'date_format' => get_option('date_format'),
 		'child_of' => 0, 'exclude' => '',
 		'title_li' => __('Pages'), 'echo' => 1,
-		'authors' => '', 'sort_column' => 'menu_order, post_title'
+		'authors' => '', 'sort_column' => 'menu_order, post_title',
+		'before' => '<li class="pagenav">', 'after' => '</li>'
 	);
 
 	$r = wp_parse_args( $args, $defaults );
@@ -325,7 +326,7 @@
 
 	if ( !empty($pages) ) {
 		if ( $r['title_li'] )
-			$output .= '<li class="pagenav">' . $r['title_li'] . '<ul>';
+			$output .= $r['before'] . $r['title_li'] . '<ul>';
 
 		global $wp_query;
 		if ( is_page() || $wp_query->is_posts_page )
@@ -333,7 +334,7 @@
 		$output .= walk_page_tree($pages, $r['depth'], $current_page, $r);
 
 		if ( $r['title_li'] )
-			$output .= '</ul></li>';
+			$output .= '</ul>'. $r['after'];
 	}
 
 	$output = apply_filters('wp_list_pages', $output);
Index: wp-includes/general-template.php
===================================================================
--- wp-includes/general-template.php	(revision 7923)
+++ wp-includes/general-template.php	(working copy)
@@ -359,12 +359,19 @@
 	$defaults = array(
 		'type' => 'monthly', 'limit' => '',
 		'format' => 'html', 'before' => '',
-		'after' => '', 'show_post_count' => false
+		'after' => '', 'show_post_count' => false,
+		'title_li' => '' , 'before' => '', 
+		'after' => ''
 	);
-
+	
 	$r = wp_parse_args( $args, $defaults );
 	extract( $r, EXTR_SKIP );
 
+	if ( $r[$before] )
+			echo $r[$before];
+	if ( $r['title_li'] )
+            $r['title_li'] . '<ul>';
+
 	if ( '' == $type )
 		$type = 'monthly';
 
@@ -516,6 +523,10 @@
 			}
 		}
 	}
+	if ( $r['title_li'] )
+		echo '</ul>';
+	if ( $r['after'])
+		$r['after'];
 }
 
 
