|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base
|
| #
1.22 |
|
23-Apr-2025 |
thorpej |
Add support for serializing to, and de-serializing from, JSON, as specified in RFC 8259. Format is automatically detected for input, and can be specified explicitly for output. The default format remains XML.
As part of this change, generic prop_object_{internalize,externalize}() functions are provided, and the "_with_format" flavor allows the output format to be specified. Previous array- and dictionary-specific routines remain for backwards compatibility.
|
| #
1.21 |
|
02-Apr-2025 |
gutteridge |
prop_dictionary.3 & prop_string.3: minor grammar fixes
|
|
Revision tags: netbsd-10-1-RELEASE perseant-exfatfs-base-20240630 perseant-exfatfs-base netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 thorpej-ifq-base thorpej-altq-separation-base netbsd-10-0-RC1 netbsd-10-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base
|
| #
1.20 |
|
06-Jun-2020 |
thorpej |
branches: 1.20.12; Improvements to the problib(3) API:
==> Provide a much more complete set of setters and getters for different value types in the prop_array_util(3) and prop_dictionary_util(3) functions.
==> Overhaul the prop_data(3), prop_number(3), and prop_string(3) APIs to be easier to use and less awkwardly named, Deprecate the old awkward names, and produce link-time warnings when they are referenced.
==> Deprecate mutable prop_data(3) and prop_string(3) objects. The old APIs that support them still exist, but will now produce link-time warnings when used.
==> When the new prop_string(3) API is used, strings are internally de-duplicated as a memory footprint optimization.
==> Provide a rich set of bounds-checked gettter functions in and a corresponding set of convenience setters in the prop_number(3) API.
==> Add a new prop_bool_value(3) function that is equivalent to prop_bool_true(3), but aligned with the new "value" routines in prop_data(3), prop_string(3), and prop_number(3).
|
|
Revision tags: netbsd-8-3-RELEASE netbsd-9-4-RELEASE netbsd-9-3-RELEASE netbsd-9-2-RELEASE netbsd-9-1-RELEASE bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 bouyer-xenpvh-base phil-wifi-20200411 is-mlppp-base phil-wifi-20200406 netbsd-8-2-RELEASE ad-namecache-base3 netbsd-9-0-RELEASE netbsd-9-0-RC2 ad-namecache-base netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 netbsd-8-1-RELEASE netbsd-8-1-RC1 pgoyette-compat-merge-20190127 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728 netbsd-8-0-RELEASE phil-wifi-base pgoyette-compat-0625 netbsd-8-0-RC2 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 netbsd-8-0-RC1 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-20171202 matt-nb8-mediatek-base perseant-stdc-iso10646-base netbsd-8-base prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 pgoyette-localcount-20170320
|
| #
1.19 |
|
12-Feb-2017 |
abhinav |
branches: 1.19.12; Use .Fn to refer a function name instead of Nm. Also, use Xr to refer problib(3) in the HISTORY section instead of Nm.
While parsing the man pages, any .Nm occurrence gets replaced by the value specified in the NAME section. Referencing individual function names with .Nm was causing makemandb(8) to replicate the complete NAME section for every such occurrence. This was leading to an ugly looking snippet in apropos(1)'s output when searched for any of these man pages.
|
|
Revision tags: netbsd-7-2-RELEASE netbsd-7-1-2-RELEASE netbsd-7-1-1-RELEASE netbsd-7-1-RELEASE netbsd-7-1-RC2 netbsd-7-nhusb-base-20170116 bouyer-socketcan-base pgoyette-localcount-20170107 netbsd-7-1-RC1 pgoyette-localcount-20161104 netbsd-7-0-2-RELEASE localcount-20160914 netbsd-7-nhusb-base pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base netbsd-7-0-1-RELEASE netbsd-7-0-RELEASE netbsd-7-0-RC3 netbsd-7-0-RC2 netbsd-7-0-RC1 netbsd-6-0-6-RELEASE netbsd-6-1-5-RELEASE netbsd-7-base yamt-pagecache-base9 yamt-pagecache-tag8 netbsd-6-1-4-RELEASE netbsd-6-0-5-RELEASE tls-earlyentropy-base riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 netbsd-6-1-3-RELEASE netbsd-6-0-4-RELEASE netbsd-6-1-2-RELEASE netbsd-6-0-3-RELEASE rmind-smpnet-nbase netbsd-6-1-1-RELEASE riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base rmind-smpnet-base netbsd-6-0-2-RELEASE netbsd-6-1-RELEASE netbsd-6-1-RC4 netbsd-6-1-RC3 agc-symver-base netbsd-6-1-RC2 netbsd-6-1-RC1 yamt-pagecache-base8 netbsd-6-0-1-RELEASE yamt-pagecache-base7 matt-nb6-plus-nbase yamt-pagecache-base6 netbsd-6-0-RELEASE netbsd-6-0-RC2 tls-maxphys-base matt-nb6-plus-base netbsd-6-0-RC1 yamt-pagecache-base5 yamt-pagecache-base4 netbsd-6-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base
|
| #
1.18 |
|
30-Sep-2011 |
jym |
branches: 1.18.26; 1.18.30; Fix an implementation inconsistency with the prop_*_send_syscall() and prop_*_recv_syscall() functions from proplib(3). They now share the same logic as the one from prop_*_send_ioctl() functions: - returns an int - 0 indicates "no error", otherwise returns the error number (and set errno)
Many consumers of the prop_*_{ioctl, syscall} expect errno to be set on error and use err() to display the error message. As such, ensures that errno gets set before returning from these functions.
prop_*_send_syscall() functions returned a boolean, and now return an int. Fix all call sites to use the new paradigm (only quota2 is affected in src).
As the prop_*_{send,recv}_syscall() API appeared in -current and is only used by the recent quota2 code, I am not bumping the lib. The API change only affects the prop_*_send_syscall() function (recv_syscall()s were already used correctly), so ensure you are not mixing "old" -current quota binaries with a new proplib(3) (or the other way around). This change will be announced via a HEADS-UP and UPDATING.
Does not affect the kernel part of proplib.
Document the correct API in prop_array(3) and prop_dictionary(3).
Thanks to Francois Tigeot for noticing the API inconsistency and reporting it on tech-kern@.
ok bouyer@.
|
|
Revision tags: cherry-xenmp-base bouyer-quota2-nbase
|
| #
1.17 |
|
21-Feb-2011 |
njoly |
Fix section for umask xrefs.
|
|
Revision tags: bouyer-quota2-base
|
| #
1.16 |
|
02-Feb-2011 |
plunky |
prop_dictionary_internalize_from_file_returns_a_dictionary_not_an_array
|
|
Revision tags: matt-mips64-premerge-20101231 yamt-nfs-mp-base11 yamt-nfs-mp-base10 rmind-uvmplock-base yamt-nfs-mp-base9 matt-premerge-20091211
|
| #
1.15 |
|
05-Dec-2009 |
wiz |
branches: 1.15.4; Fix prop_dictionary_ensure_capacity signature, bump date. From Silas Silva in PR 42413.
|
|
Revision tags: jym-xensuspend-nbase
|
| #
1.14 |
|
10-Oct-2009 |
bad |
Implement prop_array_externalize_to_pref(), prop_array_copyin(), prop_dictionary_externalize_to_pref() and prop_dictionary_copyin() as discussed in the thread: http://mail-index.netbsd.org/tech-kern/2009/07/29/msg005594.html
Bump libprop shlib minor.
|
|
Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 yamt-nfs-mp-base8 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 yamt-nfs-mp-base7 netbsd-5-0-1-RELEASE jymxensuspend-base yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 jym-xensuspend-base netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 yamt-nfs-mp-base2 wrstuden-revivesa-base
|
| #
1.13 |
|
06-May-2008 |
xtraeme |
Xref prop_dictionary_util(3).
|
| #
1.12 |
|
30-Apr-2008 |
martin |
Convert TNF licenses to new 2 clause variant
|
|
Revision tags: yamt-pf42-baseX yamt-nfs-mp-base yamt-pf42-base yamt-lazymbuf-base15 yamt-lazymbuf-base14 keiichi-mipv6-base matt-armv6-nbase hpcarm-cleanup-base
|
| #
1.11 |
|
21-Jan-2008 |
christos |
branches: 1.11.4; PR/37838: Stathis Kamperis: proplib documentation enhancements
|
|
Revision tags: matt-armv6-base
|
| #
1.10 |
|
05-Jan-2008 |
mjf |
Nuke prop_dictionary_capacity, there was no implementation for it.
No objections on tech-kern.
|
|
Revision tags: yamt-kmem-base3 cube-autoconf-base yamt-kmem-base2 yamt-kmem-base reinoud-bufcleanup-nbase yamt-x86pmap-base4 yamt-x86pmap-base3 reinoud-bufcleanup-base
|
| #
1.9 |
|
11-Oct-2007 |
xtraeme |
Fix a typo that has been there forever. prop_dictionary_set: the object will be retained by the dictionary not array.
|
|
Revision tags: yamt-x86pmap-base2 yamt-x86pmap-base
|
| #
1.8 |
|
16-Aug-2007 |
thorpej |
branches: 1.8.2; boolean_t -> bool TRUE -> true FALSE -> false
|
|
Revision tags: matt-mips64-base
|
| #
1.7 |
|
07-Jul-2007 |
degroote |
Fix the prototyp of prop_dictionary_set_keysym in the DESCRIPTION part
|
|
Revision tags: yamt-idlelwp-base8
|
| #
1.6 |
|
28-Apr-2007 |
xtraeme |
It's "Copy a dictionary" not "Copy an dictionary". preempt wiz and bump date.
|
|
Revision tags: wrstuden-fixsa-newbase wrstuden-fixsa-base-1 netbsd-4-0-RELEASE netbsd-4-0-RC5 netbsd-4-0-RC4 netbsd-4-0-RC3 netbsd-4-0-RC2 netbsd-4-0-RC1 wrstuden-fixsa-base thorpej-atomic-base vmlocking-base yamt-splraiseipl-base5 yamt-splraiseipl-base4 yamt-splraiseipl-base3 newlock2-base netbsd-4-base
|
| #
1.5 |
|
26-Oct-2006 |
thorpej |
branches: 1.5.2; 1.5.4; 1.5.14; - Add prop_dictionary_all_keys(). Takes a snapshot of a dictionary's keys and returns them in an array. This effectively allows a caller to mutate a dictionary while iterating over it (really, you iterate over the array of keys instead of the dictionary itself). - Add a slew of utility functions that make it more convenient (in some circumstances, anyway) to get/set values in a dictionary.
|
|
Revision tags: yamt-splraiseipl-base2 yamt-splraiseipl-base yamt-pdpolicy-base9 yamt-pdpolicy-base8
|
| #
1.4 |
|
21-Aug-2006 |
thorpej |
Several changes to proplib: - Arrays can now be externalized and internalized in the same way dictionaries can. - Add new "externalize to file" and "internalize from file" functions to make reading a property list from a file and writing a property list to a file more convenient. - Many assertions in the object implementations are gone. Instead, calling an accessor for one object type with a different object type as an argument will return a suitable "invalid" value. - prop_object_type() now returns a new PROP_TYPE_UNKNOWN value if called with a NULL object. - Externalized property lists now contain a reference to the Apple XML plist DTD. - Add a new prop_ingest(3) facility, which provides a convenient way to translate a dictionary into an arbitrary binary representation.
|
|
Revision tags: abandoned-netbsd-4-base yamt-pdpolicy-base7
|
| #
1.3 |
|
09-Jul-2006 |
wiz |
branches: 1.3.2; Drop trailing whitespace.
|
|
Revision tags: yamt-pdpolicy-base6 yamt-pdpolicy-base5
|
| #
1.2 |
|
18-May-2006 |
thorpej |
- Add prop_array_equals(), prop_dictionary_equals(), and prop_dictionary_keysym_equals(), and prop_object_equals() functions. - Use realloc() where it makes sense. There will be more changes in this area. - Add a _prop_object_type structure that is used internally to keep information about the object types. Decreases the footprint of the objects slightly by replacing several pointers with just one.
|
| #
1.1 |
|
27-Apr-2006 |
thorpej |
Initial commit of proplib, a library for manipulating property lists and converting to/from an XML external representation (based on Apple XML property lists). Works in the kernel and user space.
|