ui.information("The configuration file '/etc/samba/smb.conf' does not exist. This file, and its contents, are critical for the operation of the SAMBA package(s). A common situation for this is:\n * you removed (but did not purge) SAMBA;\n * later on, you (or somebody) manually deleted '/etc/samba/smb.conf;\n * you reinstalled SAMBA.\nAs a result, this file is *not* reinstalled. If this is your case, please purge samba-common (e.g., sudo apt-get purge samba-common) and then reinstall SAMBA.\nYou may want to check other sources, like: https://answers.launchpad.net, https://help.ubuntu.com, and http://ubuntuforums.org. Please press any key to end apport's bug collection.")
raiseStopIteration# we are out
ui.information("As a part of the bug reporting process, you'll be asked as series of questions to help provide a more descriptive bug report. Please answer the following questions to the best of your abilities. Afterwards, a browser will be opened to finish filing this as a bug in the Launchpad bug tracking system.")
response=ui.choice("How would you best describe your setup?",["I am running a Windows File Server.","I am connecting to a Windows File Server."],False)
ifresponse==None:
raiseStopIteration# user has canceled
elifresponse[0]==0:#its a server
response=ui.yesno("Did this used to work properly with a previous release?")
ifresponse==None:# user has canceled
raiseStopIteration
ifresponse==False:
report['SambaServerRegression']="No"
ifresponse==True:
report['SambaServerRegression']='Yes'
response=ui.choice("Which clients are failing to connect?",["Windows","Ubuntu","Both","Other"],False)
ifresponse==None:
raiseStopIteration# user has canceled
ifresponse[0]==0:
report['UbuntuFailedConnect']='Yes'
ifresponse[0]==1:
report['WindowsFailedConnect']='Yes'
ifresponse[0]==2:
report['BothFailedConnect']='Yes'
ifresponse[0]==3:
report['OtherFailedConnect']='Yes'
response=ui.yesno("The contents of your /etc/samba/smb.conf file may help developers diagnose your bug more quickly. However, it may contain sensitive information. Do you want to include it in your bug report?")
testparm_response=ui.yesno("testparm(1) is a samba utility that will check /etc/samba/smb.conf for correctness and report issues it may find. Do you want to include its stderr output in your bug report? If you answer no, then we will only include its numeric exit status.")
response=ui.yesno("The contents of your /var/log/samba/log.smbd and /var/log/samba/log.nmbd may help developers diagnose your bug more quickly. However, it may contain sensitive information. Do you want to include it in your bug report?")
ifresponse==None:
raiseStopIteration
elifresponse==False:
ui.information("The contents of your /var/log/samba/log.smbd and /var/log/samba/log.nmbd will NOT be included in the bug report.")
elifresponse==True:
sec_re=re.compile('failed',re.IGNORECASE)
report['SmbLog']=recent_smblog(sec_re)
report['NmbdLog']=recent_nmbdlog(sec_re)
elifresponse[0]==1:#its a client
response=ui.yesno("Did this used to work properly with a previous release?")
ifresponse==None:#user has canceled
raiseStopIteration
ifresponse==False:
report['SambaClientRegression']="No"
ifresponse==True:
report['SambaClientRegression']="Yes"
response=ui.choice("How is the remote share accessed from the Ubuntu system?",["Nautilus (or other GUI Client)","smbclient (from the command line)","cifs filesystem mount (from /etc/fstab or a mount command)"],False)