Thanks all for the help. I have spent a lot of time on this and it drove me nuts at times. But I think I finally solve this. After my last reply I started testing things and found that I had not solve the problem. With the samba_create_home_dirs bool I was in fact able to create a new dir in a share, but I was unable to rename it. So I tried changing all samba and smbd bools to yes, but this did not help and I kept getting audit errors.
So I went looking and found that the information was on my system all along in a man page call samba_selinux. Seeing I was dealing with shares that were not home dirs of the person connecting there was an issue of SELinux requiring files (and dirs) to have an extended attribute set so that the daemons that access them can be governed. The attribute in question for samba is samba_share_t and this needs to be set to solve the problem I was having. So I changed all the bools back to what they were to begin with which was:
samba_create_home_dirs --> off
samba_domain_controller --> off
samba_enable_home_dirs --> on
samba_export_all_ro --> on
samba_export_all_rw --> on
samba_run_unconfined --> off
samba_share_fusefs --> off
samba_share_nfs --> off
sanlock_use_samba --> off
use_samba_home_dirs --> off
virt_use_samba --> off
allow_smbd_anon_write --> off
And then set the attribute on each of my samba shares root dir with:
chcon -Rt samba_share_t <FULL PATH TO SHARE>
And then all was working within the share. To make this permanent (so any restorecon wouldn't change it back) I did this with:
semanage fcontext -a -t samba_share_t "<FULL PATH TO SHARE>(/.*)?"
restorecon -R -v <FULL PATH TO SHARE>
There is a bunch of information in this man page (installed with selinux-policy package) that was helpful.
I'm setting this to solved, but I still don't know what changed with F16 that effected the samba shares, was it selinux or samba or both? Don't know but I'm moving on...