(Note: please forgive me if this is way, way more info than you wanted...)
In order to override a SME template, the filename in .../templates-custom/... should to be identical to the filename in .../templates/...; I'm not sure what happens if you create a folder with the same name as a default template fragment (instead of a file).
It looks to me like the file that sets C4 in /var/service/ftp/peers/local is /etc/e-smith/templates/var/service/ftp/peers/local/ConcurrencyPerIP, so the file you should create a file named /etc/e-smith/templates-custom/var/service/ftp/peers/local/ConcurrencyPerIP
In general, here's how I go about creating a custom template:
1) Identify the service performing the task I want to customize
2) Identify the configurataion file that needs to be customized
3) Change the config file manually
4) Restart the affected service
5) Verify that restarting the service did not return the config file to the original configuration (dnscache, for example, regenerates .../dnscache/root/servers each time the service is restarted)
6) Verify that the change introduced fixes the problem I am addressing
7) Locate the default template fragment that generates the piece of the config file I want to modify
8) copy the default template fragment into the appropriate .../templates-custom/... folder tree
9) edit the .../templates-custom/... copy of the template fragment
10) use expand-template to regenerate the target config file
11) verify (using file date and time, or by using a slightly different value for the new parameter than was used in step 3) that the config file now contains the output generated by the new custom template fragement.
12) re-test
13) Document the operation in the wiki if it seems to me that the info would be useful to others
Not every config option of every program is templated; for example, there is no template (that I can find) to control /var/service/qpsmtpd/config.
Not every template is in the location you might expect (.../qpsmtpd/peers/0 is built using the template fragments in .../qpsmtpd/config/plugins due to the instructions in .../templates.metadata/...).
Not every function is controlled by only one template (or config file) - email attachment size, for example, is affected by settings in qmail, qpsmtpd, php and clamd.
Finally, template fragments are processed alpha-numerically - so be sure that your customizations are inserted into the target config file in a sensible location.
In your case:
- Does replacing the default "C4" with "C16" in /var/service/ftp/peers/local have the desired results?
(/var/log/ftp/current tells you your "concurrency" value for each subnet when you establish a connection)
- If so, does your custom template fragment generate the desired content for that file?