]> git.tuebingen.mpg.de Git - paraslash.git/commitdiff
Merge branch 'refs/heads/t/logo'
authorAndre Noll <maan@tuebingen.mpg.de>
Sat, 12 Mar 2022 16:22:15 +0000 (17:22 +0100)
committerAndre Noll <maan@tuebingen.mpg.de>
Sat, 12 Mar 2022 16:23:30 +0000 (17:23 +0100)
The fancy new svg logo and a couple of changes which streamline
the look of the web pages.

Cooking for a month.

* refs/heads/t/logo:
  web: Add horizontal space between table columns.
  web: Clean up style sheet.
  web: Avoid bold face on main page.
  web: Add padding to all pages.
  web: Move navigation into top level table.
  web: Link to "./index.html" rather than to ".".
  web: Remove selected APIs page.
  web: Avoid "integrated" in feature list of main page.
  web: Shorten slogan.
  web: The new logo for paraslash-0.7.
  manual: Avoid vertical space between coding style items.

1  2 
NEWS.md
web/documentation.in.html
web/manual.md

diff --combined NEWS.md
index 9e67364d9d6c2bb4dd8390e4a5ee5a524bbe5157,a31aeaf18e04b32b496f47cea04988fd74f5536f..dc2e8050c386135ce618159966c952c4170bdc01
+++ b/NEWS.md
@@@ -5,21 -5,6 +5,21 @@@ NEW
  0.7.0 (to be announced) "seismic orbit"
  ---------------------------------------
  
 +- Starting with paraslash-0.7.0, the sha256 hash value of each known
 +  audio file is stored in the database while older versions employed the
 +  sha1 hash algorithm which has been considered insecure since 2005
 +  and should no longer be used today. The switch from sha1 to sha256
 +  requires users to upgrade their database using the new para_upgrade_db
 +  program, followed by re-adding all files to recompute the hashes. With
 +  this approach all metadata stored in the database (last played date,
 +  num played value, moods, playlists, attributes etc.) are kept. An
 +  simpler alternative is to start over from scratch by running the
 +  "init" command but this will lose these metadata.
 +- Server and client now hash the session keys with sha256 rather
 +  than sha1 during the initial handshake. This feature is optional and
 +  backwards compatible: old clients can still connect to a new server
 +  (using sha1). Also new clients can connect to an old server (again
 +  using sha1).
  - The new "duration" keyword of the mood grammar makes it possible to
    impose a constraint on the duration of the admissible files.
  - The long deprecated version 1 mood syntax is no longer supported.
@@@ -30,6 -15,6 +30,7 @@@
  - New option for configure: --enable-ubsan to detect and report undefined
    behaviour.
  - The "tasks" server command has been removed.
++- The fancy new logo and a minor overhaul of the web pages.
  
  Downloads:
  [tarball](./releases/paraslash-git.tar.xz)
index 8e85f7fc5b260b73b095cbea04f7ff7a72fb2017,15255e0d404d5a7bdda6843da5ac6b526d1e3063..32efe9c3b191ff2bfa6df658480e63a884e3952f
        [<a href="para_gui.man.html">para_gui</a>]
        [<a href="para_mixer.man.html">para_mixer</a>]
        [<a href="para_play.man.html">para_play</a>]
 +      [<a href="para_upgrade_db.man.html">para_upgrade_db</a>]
  </p>
  
  <h2> Source code documentation </h2>
  
  <ul>
-       <li> <a href="doxygen/html/index.html">API Reference</a> </li>
+       <li> <a href="doxygen/html/files.html">API Reference</a> </li>
  </ul>
diff --combined web/manual.md
index 94de694470a2c2d5a4f02aab2eb7c9b558fd333c,ab6784203445f352cc57cf29567b521fdbf10edc..78834a4d48be70f178dba5ffed88f5db8761745c
@@@ -488,10 -488,10 +488,10 @@@ An empty database is created wit
        para_client init
  
  This initializes a couple of empty tables under
 -~/.paraslash/afs_database-0.4. You normally don't need to look at these
 +~/.paraslash/afs_database-0.7. You normally don't need to look at these
  tables, but it's good to know that you can start from scratch with
  
 -      rm -rf ~/.paraslash/afs_database-0.4
 +      rm -rf ~/.paraslash/afs_database-0.7
  
  in case something went wrong.
  
@@@ -613,11 -613,10 +613,11 @@@ while the second part is the session ke
  
  - para_client receives the encrypted buffer and decrypts it with the
  user's private key, thereby obtaining the challenge buffer and the
 -session key. It sends the SHA1 hash value of the challenge back to
 -para_server and stores the session key for further use.
 +session key. It hashes the challenge buffer with a crytographic hash
 +function, sends the hash value back to para_server and stores the
 +session key for further use.
  
 -- para_server also computes the SHA1 hash of the challenge and compares
 +- para_server also computes the hash value of the challenge and compares
  it against what was sent back by the client.
  
  - If the two hashes do not match, the authentication has failed and
@@@ -631,7 -630,7 +631,7 @@@ the session key known to both peers
  paraslash relies on the quality of the pseudo-random bytes provided
  by the crypto library (openssl or libgcrypt), on the security of
  the implementation of the RSA and AES crypto routines and on the
 -infeasibility to invert the SHA1 function.
 +infeasibility to invert the hash function.
  
  Neither para_server or para_client create RSA keys on their
  own. This has to be done once for each user as sketched in
@@@ -805,11 -804,10 +805,11 @@@ This is the most important and usually 
  AFS database. It contains the information needed to stream each audio
  file. In particular the following data is stored for each audio file.
  
 -- SHA1 hash value of the audio file contents. This is computed once
 -when the file is added to the database. Whenever AFS selects this
 -audio file for streaming the hash value is recomputed and checked
 -against the value stored in the database to detect content changes.
 +- The cryptographic hash value of the audio file contents. This is
 +computed once when the file is added to the database. Whenever AFS
 +selects this audio file for streaming the hash value is recomputed
 +and checked against the value stored in the database to detect
 +content changes.
  
  - The time when this audio file was last played.
  
@@@ -1149,7 -1147,7 +1149,7 @@@ if the "-a" switch is given
  File renames and content changes
  --------------------------------
  
 -Since the audio file selector knows the SHA1 of each audio file that
 +Since the audio file selector knows the hash of each audio file that
  has been added to the afs database, it recognizes if the content of
  a file has changed, e.g. because an ID3 tag was added or modified.
  Also, if a file has been renamed or moved to a different location,
@@@ -1178,14 -1176,14 +1178,14 @@@ may refuse to start again because of "d
  case you'll have to run the oslfsck program of libosl to fix your
  database:
  
 -      oslfsck -fd ~/.paraslash/afs_database-0.4
 +      oslfsck -fd ~/.paraslash/afs_database-0.7
  
  However, make sure para_server isn't running before executing oslfsck.
  
  If you don't mind to recreate your database you can start
  from scratch by removing the entire database directory, i.e.
  
 -      rm -rf ~/.paraslash/afs_database-0.4
 +      rm -rf ~/.paraslash/afs_database-0.7
  
  Be aware that this removes all attribute definitions, all playlists
  and all mood definitions and requires to re-initialize the tables.
@@@ -2077,11 -2075,11 +2077,11 @@@ here are the most important points
  - Don't leave whitespace at the end of lines.
  - The limit on the length of lines is 80 columns.
  - Use K&R style for placing braces and spaces:
+ <pre>
                if (x is true) {
                        we do y
                }
+ </pre>
  - Use a space after (most) keywords.
  - Do not add spaces around (inside) parenthesized expressions.
  - Use one space around (on each side of) most binary and ternary operators.