I've added the following code after the accept call:
struct rfcomm_dev_req req;
memset(&req,0,sizeof(req));
req.dev_id = 0; //?? might depend on other connections, but I have none at this time
req.flags = (1 << RFCOMM_REUSE_DLC) | (1 << RFCOMM_RELEASE_ONHUP);
bacpy(&req.src, &loc_addr.rc_bdaddr);
bacpy(&req.dst, &rem_addr.rc_bdaddr);
req.channel = rem_addr.rc_channel;
int dev = ioctl(clientSock, RFCOMMCREATEDEV, &req);
std::string devname = "/dev/rfcomm";
devname += std::to_string(dev);
I'm assuming I'm on the right track because it DID create a /dev/rfcomm entry.