Index: option.php
===================================================================
--- option.php	(revision 21204)
+++ option.php	(working copy)
@@ -1021,7 +1021,13 @@
 function set_site_transient( $transient, $value, $expiration = 0 ) {
 	global $_wp_using_ext_object_cache;
 
-	$value = apply_filters( 'pre_set_site_transient_' . $transient, $value );
+	$value      = apply_filters( 'pre_set_site_transient_' . $transient, $value );
+	$expiration = apply_filters( 'pre_set_site_transient_exp_' . $transient, $expiration );
+	$options    = apply_filters( 'pre_set_site_transient_' . $transient, null, array( 'value' => $value, 'expiration' =>$expiration ) );
+	if ( is_array( $options ) && null != $options ) ) {
+		$value = $options['value'];
+		$expiration = $options['expiration'];
+	}
 
 	if ( $_wp_using_ext_object_cache ) {
 		$result = wp_cache_set( $transient, $value, 'site-transient', $expiration );
