WordPress.org

Make WordPress Core

Opened 11 years ago

Closed 11 years ago

Last modified 11 years ago

#7458 closed defect (bug) (fixed)

curl_setopt() throws errors in safe mode

Reported by: Po0ky Owned by:
Milestone: 2.7 Priority: normal
Severity: normal Version: 2.7
Component: General Keywords: curl safe_mode http has-patch tested commit
Focuses: Cc:
PR Number:

Description

I'm getting the following error on each page.

Warning: curl_setopt() [function.curl-setopt]: CURLOPT_FOLLOWLOCATION cannot be activated when in safe_mode or an open_basedir is set in /**/wordpress/wp-includes/http.php on line 843

My best guess is there should be a check before running the curl-setopt function to check if safe mode is set or not.

Attachments (2)

7458.diff (710 bytes) - added by ionfish 11 years ago.
fix_curl.patch (739 bytes) - added by Po0ky 11 years ago.
check_safe_curl.patch

Download all attachments as: .zip

Change History (12)

#1 @DD32
11 years ago

Of course theres no mention of this on the Curl page from what i can see..

Thats not the first curl_setopt() call either, My only guess is its supposed to prevent the script from entering a endless loop? (because without CURLOPT_MAXREDIRS set, it'll follow as many as it wants -- which is done on the next line)

Perhaps, It'd be best to just not use the curl class at all in safe mode? (Its the 2nd preference for GET requests at present, not used for post?)

#2 @ionfish
11 years ago

Could just set CURLOPT_FOLLOWLOCATION only if safe mode isn't on.

@ionfish
11 years ago

#3 @jacobsantos
11 years ago

I need to turn on safe mode every once and a while while I run code probably.

@Po0ky
11 years ago

check_safe_curl.patch

#4 @Po0ky
11 years ago

Hmpf, ignore my patch. I must be stupid or blind. :/

#5 @santosj
11 years ago

have you checked whether have it after the Max_redirs prevents the error?

#6 @santosj
11 years ago

I checked and this should go in.

#7 @santosj
11 years ago

  • Keywords has-patch tested commit added

#8 @santosj
11 years ago

One question, what does open_basedir have to do with whether FOLLOWLOCATION can be used? just because open_basedir is set doesn't mean safe_mode is also.

#9 @ryan
11 years ago

  • Resolution set to fixed
  • Status changed from new to closed

(In [8534]) Don't call curl_setopt() if safe_mode is enabled. Props ionfish and Po0ky. fixes #7458 see #4779

#10 @santosj
11 years ago

Oh right. The warning. That sucks.

Note: See TracTickets for help on using tickets.