Page 1 of 2

SAB ignoreing host setting in conf [solved]

Posted: July 12th, 2012, 1:45 pm
by whytewolf
Version: 0.7.1
OS: CentOS 6.2
Install-type: Sab repo
Skin (if applicable): NA
Firewall Software: iptables
Are you using IPV6? yes

I'm having an issue with 0.7.0 and 0.7.1. once I updated to these versions my host setting is compleatly ignored. 0.7.0 ignored only the ipv6 addresses. 0.7.1 ignores all address. the only addresses SABnzb starts on are 0.0.0.0 and ::1. I don't mind 0.0.0.0 however as I want to use this through my ipv6 network ::1 is problematic.

tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 13182/python
tcp 0 0 ::1:8080 :::* LISTEN 13182/python

this is true no matter what i put in the host setting. either through the interface or directly in the conf file.

2012-07-12 11:27:05,838::INFO::[_cplogging:55] [12/Jul/2012:11:27:05] ENGINE Bus STARTING
2012-07-12 11:27:05,843::INFO::[_cplogging:55] [12/Jul/2012:11:27:05] ENGINE Started monitor thread '_TimeoutMonitor'.
2012-07-12 11:27:05,945::INFO::[_cplogging:55] [12/Jul/2012:11:27:05] ENGINE Serving on ::1:8080
2012-07-12 11:27:06,048::INFO::[_cplogging:55] [12/Jul/2012:11:27:06] ENGINE Serving on 0.0.0.0:8080
2012-07-12 11:27:06,048::INFO::[_cplogging:55] [12/Jul/2012:11:27:06] ENGINE Bus STARTED

this is the host line in my current config file

host = 192.168.1.140

Re: SAB ignoreing host setting in conf

Posted: July 12th, 2012, 2:06 pm
by shypike
I don't mind 0.0.0.0 however as I want to use this through my ipv6 network ::1 is problematic.
Why is ::1 problematic?
You say that your host address is 192.158.1.140, is this IP address correct?
SABnzbd will only use 0.0.0.0 if you tell it to or when the host address is incorrect (if detectable).
Is SABnzbd reading the ini file that you expect (you can see in the Config main page).

Re: SAB ignoreing host setting in conf

Posted: July 12th, 2012, 3:28 pm
by whytewolf
::1 is the loopback address in ipv6 not a global address, my primary goal is setting up on ipv6. as for the ip. yes it is the correct ip. I have also tried the local host. the ip is correct. I have updated it several times to a few of the servers ip addresses. copied directly out of ifconfig. and yes, the Config file i expect to be read is being read.

Re: SAB ignoreing host setting in conf

Posted: July 12th, 2012, 4:07 pm
by sander
So what happens if you specify "::" as the host address? What does SABnzbd spit out on the command line?

Here's the output of SABnzbd with :: on Linux:

Code: Select all

2012-07-12 23:08:31,800::INFO::[SABnzbd:1472] Starting web-interface on :::8080
2012-07-12 23:08:31,801::INFO::[_cplogging:55] [12/Jul/2012:23:08:31] ENGINE Bus STARTING
2012-07-12 23:08:31,804::INFO::[_cplogging:55] [12/Jul/2012:23:08:31] ENGINE Started monitor thread '_TimeoutMonitor'.
2012-07-12 23:08:31,905::INFO::[_cplogging:55] [12/Jul/2012:23:08:31] ENGINE Serving on :::8080
2012-07-12 23:08:31,906::INFO::[_cplogging:55] [12/Jul/2012:23:08:31] ENGINE Bus STARTED

Re: SAB ignoreing host setting in conf

Posted: July 12th, 2012, 4:34 pm
by shypike
You can suppress ::1 by starting once with --no_ipv6
Or set "no_ipv6" in Config->Special and restart.

Re: SAB ignoreing host setting in conf

Posted: July 12th, 2012, 4:37 pm
by sander
shypike wrote:You can suppress ::1 by starting once with --no_ipv6
Or set "no_ipv6" in Config->Special and restart.
I believe the OP wants to use IPv6 ... which is a good thing ... ;)

Re: SAB ignoreing host setting in conf

Posted: July 12th, 2012, 11:12 pm
by whytewolf
sander wrote:So what happens if you specify "::" as the host address? What does SABnzbd spit out on the command line?

Here's the output of SABnzbd with :: on Linux:

Code: Select all

2012-07-12 23:08:31,800::INFO::[SABnzbd:1472] Starting web-interface on :::8080
2012-07-12 23:08:31,801::INFO::[_cplogging:55] [12/Jul/2012:23:08:31] ENGINE Bus STARTING
2012-07-12 23:08:31,804::INFO::[_cplogging:55] [12/Jul/2012:23:08:31] ENGINE Started monitor thread '_TimeoutMonitor'.
2012-07-12 23:08:31,905::INFO::[_cplogging:55] [12/Jul/2012:23:08:31] ENGINE Serving on :::8080
2012-07-12 23:08:31,906::INFO::[_cplogging:55] [12/Jul/2012:23:08:31] ENGINE Bus STARTED
I tried many iterations of "::" like i said in the header. it's like SAB is just ignoring the host field, in the conf file. everything else seems to work fine. username, password, nntp server settings.

Code: Select all

2012-07-12 20:54:44,234::INFO::[SABnzbd:1261] --------------------------------
2012-07-12 20:54:44,234::INFO::[SABnzbd:1262] SABnzbd.py-0.7.1 (rev=0a0d00930afca5de3d281bf0c5d29cc8e141cba4)
2012-07-12 20:54:44,234::INFO::[SABnzbd:1274] Platform = posix
2012-07-12 20:54:44,235::INFO::[SABnzbd:1275] Python-version = 2.6.6 (r266:84292, Jun 18 2012, 14:18:47)
[GCC 4.4.6 20110731 (Red Hat 4.4.6-3)]
2012-07-12 20:54:44,235::INFO::[SABnzbd:1276] Arguments = /usr/share/SABnzbd/SABnzbd.py -d -f /home/whytewolf/.sabnzbd/sabnzbd.ini
2012-07-12 20:54:44,235::INFO::[SABnzbd:1289] Read INI file /home/whytewolf/.sabnzbd/sabnzbd.ini
2012-07-12 20:54:44,236::INFO::[__init__:904] Loading data for bookmarks.sab from /home/whytewolf/.sabnzbd/admin/bookmarks.sab
2012-07-12 20:54:44,236::INFO::[__init__:904] Loading data for rss_data.sab from /home/whytewolf/.sabnzbd/admin/rss_data.sab
2012-07-12 20:54:44,236::INFO::[__init__:904] Loading data for totals9.sab from /home/whytewolf/.sabnzbd/admin/totals9.sab
2012-07-12 20:54:44,237::INFO::[postproc:90] Loading postproc queue
2012-07-12 20:54:44,237::INFO::[__init__:904] Loading data for postproc1.sab from /home/whytewolf/.sabnzbd/admin/postproc1.sab
2012-07-12 20:54:44,237::INFO::[__init__:904] Loading data for queue9.sab from /home/whytewolf/.sabnzbd/admin/queue9.sab
2012-07-12 20:54:44,238::INFO::[__init__:904] Loading data for watched_data.sab from /home/whytewolf/.sabnzbd/admin/watched_data.sab
2012-07-12 20:54:44,238::INFO::[downloader:208] Resuming
2012-07-12 20:54:44,239::INFO::[__init__:314] All processes started
2012-07-12 20:54:44,239::INFO::[SABnzbd:333] Web dir is /usr/share/SABnzbd/interfaces/Plush
2012-07-12 20:54:44,239::INFO::[SABnzbd:333] Web dir is /usr/share/SABnzbd/interfaces/Config
2012-07-12 20:54:44,256::INFO::[SABnzbd:462] _yenc module... found!
2012-07-12 20:54:44,257::INFO::[SABnzbd:470] par2 binary... found (/usr/bin/par2)
2012-07-12 20:54:44,257::INFO::[SABnzbd:478] unrar binary... found (/usr/bin/unrar)
2012-07-12 20:54:44,258::INFO::[SABnzbd:483] unzip binary... found (/usr/bin/unzip)
2012-07-12 20:54:44,258::INFO::[SABnzbd:489] nice binary... found (/bin/nice)
2012-07-12 20:54:44,258::INFO::[SABnzbd:493] ionice binary... found (/usr/bin/ionice)
2012-07-12 20:54:44,258::INFO::[SABnzbd:498] pyOpenSSL... found (True)
2012-07-12 20:54:44,261::INFO::[SABnzbd:1472] Starting web-interface on 0.0.0.0:8080
2012-07-12 20:54:44,263::INFO::[_cplogging:55] [12/Jul/2012:20:54:44] ENGINE Bus STARTING
2012-07-12 20:54:44,268::INFO::[_cplogging:55] [12/Jul/2012:20:54:44] ENGINE Started monitor thread '_TimeoutMonitor'.
2012-07-12 20:54:44,370::INFO::[_cplogging:55] [12/Jul/2012:20:54:44] ENGINE Serving on ::1:8080
2012-07-12 20:54:44,572::INFO::[_cplogging:55] [12/Jul/2012:20:54:44] ENGINE Serving on 0.0.0.0:8080
2012-07-12 20:54:44,572::INFO::[_cplogging:55] [12/Jul/2012:20:54:44] ENGINE Bus STARTED
2012-07-12 20:54:44,806::INFO::[SABnzbd:1541] Starting SABnzbd.py-0.7.1
2012-07-12 20:54:44,809::INFO::[dirscanner:265] Dirscanner starting up
2012-07-12 20:54:44,810::INFO::[urlgrabber:78] URLGrabber starting up
here is the ini

Code: Select all

__version__ = 19
[misc]
queue_complete = ""
https_port = 9090
folder_rename = 1
allow_64bit_tools = 1
password_file = ""
rss_rate = 60
https_key = server.key
cleanup_list = ,
cache_limit = ""
ignore_unrar_dates = 0
par_option = ""
web_color = gold
replace_spaces = 1
web_color2 = ""
dirscan_speed = 5
enable_filejoin = 1
create_group_folders = 0
api_key = notarealapikey
never_repair = 0
no_penalties = 0
bandwidth_limit = 0
dirscan_dir = ""
disable_api_key = 0
email_to = ,
rss_filenames = 0
password = notmyrealpassword
permissions = 755
auto_disconnect = 1
use_pickle = 0
enable_date_sorting = 0
replace_dots = 0
movie_sort_extra = -cd%1
ionice = ""
enable_unzip = 1
download_free = ""
port = 8080
email_dir = ""
pre_script = None
email_full = 0
log_dir = logs
admin_dir = admin
nzb_backup_dir = ""
tv_sort_countries = 1
date_categories = tv,
ssl_type = v23
sfv_check = 1
date_sort_string = ""
schedlines = ,
host = ::
ignore_samples = 0
enable_tsjoin = 1
auto_browser = 0
pause_on_post_processing = 0
enable_unrar = 1
email_rss = 0
email_account = ""
email_server = ""
allow_streaming = 0
config_lock = 0
api_warnings = 1
tv_sort_string = ""
username = notmyrealusername
unpack_check = 1
download_dir = Downloads/incomplete
size_limit = ""
enable_par_cleanup = 1
safe_postproc = 1
cache_dir = cache
complete_dir = Downloads/complete
replace_illegal = 1
par2_multicore = 0
warned_old_queue = 0
language = en
check_new_rel = 1
enable_https = 0
no_dupes = 2
top_only = 0
quick_check = 1
movie_sort_string = ""
email_from = ""
movie_extra_folder = 0
email_endjob = 0
tv_categories = ,
pause_on_pwrar = 1
login_realm = SABnzbd
send_group = 0
refresh_rate = 0
movie_categories = movies,
script_dir = Scripts
email_pwd = ""
ignore_wrong_unrar = 0
nice = ""
enable_movie_sorting = 0
https_cert = server.cert
web_dir2 = ""
fail_on_crc = 0
nzb_key = nzbkeygoeshere
auto_sort = 0
ampm = 0
web_dir = Plush
queue_complete_pers = 0
enable_tv_sorting = 0
folder_max_length = 256
win_menu = 0
movie_rename_limit = 100M
pre_check = 0
osx_speed = 0
quota_period = m
quota_day = ""
quota_size = ""
osx_menu = 0
req_completion_rate = 100.2
fsys_type = 0
allow_incomplete_nzb = 0
uniconfig = 0
quota_resume = 0
random_server_ip = 1
nomedia_marker = ""
max_art_opt = 0
max_art_tries = 3
start_paused = 0
wait_ext_drive = 5
no_ipv6 = 0
[logging]
log_new = 0
max_log_size = 5242880
log_level = 1
log_backups = 5
enable_cherrypy_logging = 0
[newzbin]
username = notmyrealusername
url = www.newzbin2.es
bookmark_rate = 60
bookmarks = 1
password = notmyrealpassword
unbookmark = 1
[nzbmatrix]
username = notmyrealusername
apikey = youshouldhaveyourownkey
del_bookmark = 1
[growl]
growl_enable = 0
ntfosd_enable = 1
growl_password = ""
growl_server = ""
[servers]
[[secure.news.us.easynews.com]]
username = nothisisnottherealusername
enable = 1
name = secure.news.us.easynews.com
fillserver = 0
connections = 10
ssl = 1
host = secure.news.us.easynews.com
timeout = 120
password = nothisisnottherealpassword
optional = 0
port = 563
retention = 0
[categories]
[[*]]
priority = 0
pp = 3
name = *
script = Default
newzbin = ""
dir = ""
[[tv]]
priority = -100
pp = ""
name = tv
script = sabToSickBeard.py
newzbin = ""
dir = tv
[[movies]]
priority = -100
pp = ""
name = movies
script = Default
newzbin = ""
dir = movies

Re: SAB ignoreing host setting in conf

Posted: July 13th, 2012, 1:22 am
by sander
It looks like 0.7.x has a new function "ipv_localhost(v)", which is used at the beginning of get_webhost() and can have the effect of rewriting the host 'cherryhost'.

I played with this function, and with :: on input, cherryhost is emptied:

Code: Select all

get_webhost stuff:
The value of cherryhost on input is: ::
[(2, 1, 6, '', ('127.0.0.1', 0)), (2, 2, 17, '', ('127.0.0.1', 0)), (2, 3, 0, '', ('127.0.0.1', 0))]
item is: 127.0.0.1
item is: 127.0.0.1
item is: 127.0.0.1
The value of cherryhost on exit is: 
As my machine does listen on ::, apparantly somewhere else it must become :: again>?

I don't really understand the goal of the extra function, so I'll leave that to shypike.

Re: SAB ignoreing host setting in conf

Posted: July 13th, 2012, 2:03 am
by shypike
sander wrote: I don't really understand the goal of the extra function.
It is to prevent binding to ::1 in systems that don't properly support it.

Re: SAB ignoreing host setting in conf

Posted: July 13th, 2012, 2:06 am
by sander
shypike wrote:
sander wrote: I don't really understand the goal of the extra function.
It is to prevent binding to ::1 in systems that don't properly support it.
The snippet I posted: is that correct behaviour? Because the input is "::" (not ::1), and the result is empty.

Re: SAB ignoreing host setting in conf

Posted: July 13th, 2012, 2:08 am
by shypike
What is :: supposed to mean?

Re: SAB ignoreing host setting in conf

Posted: July 13th, 2012, 2:16 am
by sander
shypike wrote:What is :: supposed to mean?
Serious?

:: is the IPv6 equivalent of 0.0.0.0. So with :: will listen to all incoming connections. On Linux that is IPv4 and IPv6.

Or do you mean :: can never get there? I will try in SABnzbd.py ...

Re: SAB ignoreing host setting in conf

Posted: July 13th, 2012, 2:20 am
by shypike
I'm not really awake after staying up too long yesterday.
I'll look into it.

I think it's better to stop using localhost by default and go for the safer 127.0.0.1
Simultaneous binding to both 127.0.0.1 and ::1 gives problems on too many
(probably badly configured) systems.

Re: SAB ignoreing host setting in conf

Posted: July 13th, 2012, 3:26 am
by sander
shypike wrote:I'm not really awake after staying up too long yesterday.
I'll look into it.

I think it's better to stop using localhost by default and go for the safer 127.0.0.1
Simultaneous binding to both 127.0.0.1 and ::1 gives problems on too many
(probably badly configured) systems.
get_webhost() is an "interesting" read ... to me it looks like a lot of juggling with the value of cherryhost based on a lot of parameters. I suppose that's based on the experience with a lot of different setups?

Maybe some logging what happens to cherryhost would be useful?

I've put a few lines "logging.info('cherryhost is %s', cherryhost)" into SABnzbd.py (trying to get clear how cherrypost is hanldled), but the nothing appears in sabnzbd.log. :-(
If I use logging.error it only appears in the error log of the SABnzbd GUI.

Am I doing something wrong?

Re: SAB ignoreing host setting in conf

Posted: July 13th, 2012, 4:20 am
by shypike
sander wrote:
shypike wrote:Am I doing something wrong?
I don't think logging is active at that moment.
You probably need to use simple print statements.